New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 773087 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
User never visited
Closed: Nov 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Ozone: Kernel won't send duplicated events, Ozone touch state machine out of sync

Project Member Reported by jkwang@google.com, Oct 9 2017

Issue description

When a finger turns a palm, evdev will report tool_type = 2 (palm).
When palm released and palm down again, evdev won't report tool_type again but will report new tracking_id.
Essentially, tool_type = 2 is set per slot, rather then per tracking id.

Currently, ozone flip the cancelled flag for the slot when a new tracking id.
It should be "when tool_type != 2".

 
Project Member

Comment 1 by bugdroid1@chromium.org, Oct 10 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e8b8ba11e10ea326b157b0ec525983f946c59dfd

commit e8b8ba11e10ea326b157b0ec525983f946c59dfd
Author: Jingkui Wang <jkwang@google.com>
Date: Tue Oct 10 22:08:32 2017

Ozone: Make sure cancelled state survive tracking id update

Touch_major and tool_type_palm should be state per slot rather than
state per tracking id. If the touch slot was cancelled because of
tool_type_palm, it should continue to be cancelled even with a new
tracking id.

This patch change cancelled boolean to a flag with reason, thus the flip
of cancelled flag is done by different events.

Bug:  773087 
Change-Id: I746e9e383207b185dbce893d5e76ee8aa85d690c
Reviewed-on: https://chromium-review.googlesource.com/709467
Commit-Queue: Jingkui Wang <jkwang@google.com>
Reviewed-by: Michael Spang <spang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#507786}
[modify] https://crrev.com/e8b8ba11e10ea326b157b0ec525983f946c59dfd/ui/events/ozone/evdev/touch_evdev_types.h
[modify] https://crrev.com/e8b8ba11e10ea326b157b0ec525983f946c59dfd/ui/events/ozone/evdev/touch_event_converter_evdev.cc
[modify] https://crrev.com/e8b8ba11e10ea326b157b0ec525983f946c59dfd/ui/events/ozone/evdev/touch_event_converter_evdev.h
[modify] https://crrev.com/e8b8ba11e10ea326b157b0ec525983f946c59dfd/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc

Project Member

Comment 2 by bugdroid1@chromium.org, Oct 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/500ab12dd0aed56d0b1342754914079aa7f7625c

commit 500ab12dd0aed56d0b1342754914079aa7f7625c
Author: Keishi Hattori <keishi@chromium.org>
Date: Wed Oct 11 06:18:57 2017

Revert "Ozone: Make sure cancelled state survive tracking id update"

This reverts commit e8b8ba11e10ea326b157b0ec525983f946c59dfd.

Reason for revert: events_unittests failing on chromium.memory/Linux ChromiumOS MSan Tests
 crbug.com/773587 

Original change's description:
> Ozone: Make sure cancelled state survive tracking id update
> 
> Touch_major and tool_type_palm should be state per slot rather than
> state per tracking id. If the touch slot was cancelled because of
> tool_type_palm, it should continue to be cancelled even with a new
> tracking id.
> 
> This patch change cancelled boolean to a flag with reason, thus the flip
> of cancelled flag is done by different events.
> 
> Bug:  773087 
> Change-Id: I746e9e383207b185dbce893d5e76ee8aa85d690c
> Reviewed-on: https://chromium-review.googlesource.com/709467
> Commit-Queue: Jingkui Wang <jkwang@google.com>
> Reviewed-by: Michael Spang <spang@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#507786}

TBR=spang@chromium.org,dtor@chromium.org,jkwang@google.com

Change-Id: I64bd2b08666124a5a0531fb1659eec650bcece4e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  773087 
Reviewed-on: https://chromium-review.googlesource.com/711615
Reviewed-by: Keishi Hattori <keishi@chromium.org>
Commit-Queue: Keishi Hattori <keishi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#507907}
[modify] https://crrev.com/500ab12dd0aed56d0b1342754914079aa7f7625c/ui/events/ozone/evdev/touch_evdev_types.h
[modify] https://crrev.com/500ab12dd0aed56d0b1342754914079aa7f7625c/ui/events/ozone/evdev/touch_event_converter_evdev.cc
[modify] https://crrev.com/500ab12dd0aed56d0b1342754914079aa7f7625c/ui/events/ozone/evdev/touch_event_converter_evdev.h
[modify] https://crrev.com/500ab12dd0aed56d0b1342754914079aa7f7625c/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b95f635221a55472cfeac89079f1b3ab5c40d9a5

commit b95f635221a55472cfeac89079f1b3ab5c40d9a5
Author: Friedrich Horschig <fhorschig@chromium.org>
Date: Wed Oct 11 07:43:46 2017

Revert "Ozone: Make sure cancelled state survive tracking id update"

This reverts commit e8b8ba11e10ea326b157b0ec525983f946c59dfd.

Reason for revert: Repeated failures on related TouchEventConverter in Linux ChromiumOS MSan Tests. "FindIt" is 97% sure that it's this CL.

Original change's description:
> Ozone: Make sure cancelled state survive tracking id update
> 
> Touch_major and tool_type_palm should be state per slot rather than
> state per tracking id. If the touch slot was cancelled because of
> tool_type_palm, it should continue to be cancelled even with a new
> tracking id.
> 
> This patch change cancelled boolean to a flag with reason, thus the flip
> of cancelled flag is done by different events.
> 
> Bug:  773087 
> Change-Id: I746e9e383207b185dbce893d5e76ee8aa85d690c
> Reviewed-on: https://chromium-review.googlesource.com/709467
> Commit-Queue: Jingkui Wang <jkwang@google.com>
> Reviewed-by: Michael Spang <spang@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#507786}

TBR=spang@chromium.org,dtor@chromium.org,jkwang@google.com

Change-Id: I37f93fdea1ee64768496165d179ba7cb1689ca81
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  773087 
Reviewed-on: https://chromium-review.googlesource.com/711954
Reviewed-by: Friedrich Horschig <fhorschig@chromium.org>
Commit-Queue: Friedrich Horschig <fhorschig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#507919}

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1338d548d6f269cc6de3df4890308ec050ba267f

commit 1338d548d6f269cc6de3df4890308ec050ba267f
Author: Jingkui Wang <jkwang@google.com>
Date: Wed Oct 11 17:47:35 2017

Ozone: Make sure cancelled state survive tracking id update

Touch_major and tool_type_palm should be state per slot rather than
state per tracking id. If the touch slot was cancelled because of
tool_type_palm, it should continue to be cancelled even with a new
tracking id.

This patch change cancelled boolean to a flag with reason, thus the flip
of cancelled flag is done by different events.

Bug:  773087 
Change-Id: I08ee2e5aa2f66cc1ae808c3507644df52aa0ff4b
Reviewed-on: https://chromium-review.googlesource.com/713134
Reviewed-by: Michael Spang <spang@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#508025}
[modify] https://crrev.com/1338d548d6f269cc6de3df4890308ec050ba267f/ui/events/ozone/evdev/touch_evdev_types.h
[modify] https://crrev.com/1338d548d6f269cc6de3df4890308ec050ba267f/ui/events/ozone/evdev/touch_event_converter_evdev.cc
[modify] https://crrev.com/1338d548d6f269cc6de3df4890308ec050ba267f/ui/events/ozone/evdev/touch_event_converter_evdev.h
[modify] https://crrev.com/1338d548d6f269cc6de3df4890308ec050ba267f/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc

Comment 5 by jkwang@google.com, Oct 18 2017

Update: the cl is in. Will cherry-pick when it's well seasoned.

Comment 6 by jkwang@google.com, Nov 27 2017

Status: Verified (was: Assigned)

Sign in to add a comment