Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(518)

Issue 2263693003: Add palm suppression feature to EventConverterEvdev (Closed)

Created:
4 years, 4 months ago by denniskempin
Modified:
4 years, 3 months ago
Reviewers:
spang
CC:
chromium-reviews, kalyank, ozone-reviews_chromium.org, tdresser+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@stylus
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add palm suppression feature to EventConverterEvdev The palm suppression is enabled by an internal stylus enabled TouchEventConverterEvdev via a callback to InputDeviceFactoryEvdev. When in palm suppression mode, all internal touchscreen devices will be disabled. Before a touchscreen would lift all touches when disabled, and re-initialize when re-enabled. To prevent the unnecessary ioctls the code has been updated to force cancel all touches while disabled, but continue to read and sync the internal touch state. This will also make sure that touches that went down while disabled, will not suddenly show up after enabling and continue to stay cancelled until lifted. BUG=636458 Committed: https://crrev.com/0cf5d6752db81e256e5e705bc64c4bb04dc1e34a Cr-Commit-Position: refs/heads/master@{#414860}

Patch Set 1 #

Patch Set 2 : fixed nits #

Patch Set 3 : added support for MT_TOOL_PALM to cancel events #

Total comments: 2

Patch Set 4 : use touch major = max to recognize palms #

Total comments: 5

Patch Set 5 : Use enable/disable instead of palm suppression filter #

Total comments: 10

Patch Set 6 : incorporated suggestions by spang@ #

Patch Set 7 : simplified cancelation logic #

Total comments: 2

Patch Set 8 : fixed formatting nit #

Patch Set 9 : fixed unit tests #

Unified diffs Side-by-side diffs Delta from patch set Stats (+111 lines, -30 lines) Patch
M ui/events/ozone/evdev/event_converter_evdev.h View 1 2 3 4 2 chunks +7 lines, -0 lines 0 comments Download
M ui/events/ozone/evdev/event_converter_evdev.cc View 1 2 3 4 5 2 chunks +7 lines, -0 lines 0 comments Download
M ui/events/ozone/evdev/input_device_factory_evdev.h View 1 2 3 4 2 chunks +5 lines, -0 lines 0 comments Download
M ui/events/ozone/evdev/input_device_factory_evdev.cc View 1 2 3 4 5 6 7 3 chunks +22 lines, -0 lines 0 comments Download
M ui/events/ozone/evdev/touch_evdev_types.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M ui/events/ozone/evdev/touch_event_converter_evdev.h View 1 2 3 4 5 chunks +14 lines, -0 lines 0 comments Download
M ui/events/ozone/evdev/touch_event_converter_evdev.cc View 1 2 3 4 5 6 7 8 14 chunks +44 lines, -21 lines 0 comments Download
M ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc View 1 2 3 4 5 6 7 8 3 chunks +9 lines, -9 lines 0 comments Download

Messages

Total messages: 19 (6 generated)
denniskempin
PTAL Michael! Let me know if you're busy and would like to defer the review ...
4 years, 4 months ago (2016-08-19 23:23:02 UTC) #2
spang
https://codereview.chromium.org/2263693003/diff/40001/ui/events/ozone/evdev/touch_event_converter_evdev.cc File ui/events/ozone/evdev/touch_event_converter_evdev.cc (right): https://codereview.chromium.org/2263693003/diff/40001/ui/events/ozone/evdev/touch_event_converter_evdev.cc#newcode445 ui/events/ozone/evdev/touch_event_converter_evdev.cc:445: if (touch.touching && !touch.was_touching) Do we need this same ...
4 years, 4 months ago (2016-08-22 20:52:13 UTC) #3
denniskempin
On 2016/08/22 20:52:13, spang wrote: > https://codereview.chromium.org/2263693003/diff/40001/ui/events/ozone/evdev/touch_event_converter_evdev.cc > File ui/events/ozone/evdev/touch_event_converter_evdev.cc (right): > > https://codereview.chromium.org/2263693003/diff/40001/ui/events/ozone/evdev/touch_event_converter_evdev.cc#newcode445 > ...
4 years, 4 months ago (2016-08-22 22:12:16 UTC) #4
denniskempin
I have also updated the palm detection logic to look at touch major. PTAL, I ...
4 years, 4 months ago (2016-08-23 22:28:12 UTC) #5
spang
https://codereview.chromium.org/2263693003/diff/60001/ui/events/ozone/evdev/touch_event_converter_evdev.cc File ui/events/ozone/evdev/touch_event_converter_evdev.cc (right): https://codereview.chromium.org/2263693003/diff/60001/ui/events/ozone/evdev/touch_event_converter_evdev.cc#newcode200 ui/events/ozone/evdev/touch_event_converter_evdev.cc:200: events_[i].is_palm = (touch_major == major_max_); Are we confident all ...
4 years, 4 months ago (2016-08-23 23:32:29 UTC) #6
denniskempin
A lot has changed. Instead of using the PalmSuppressionFilter, we now just give the stylus ...
4 years, 3 months ago (2016-08-25 23:27:46 UTC) #8
spang
https://codereview.chromium.org/2263693003/diff/80001/ui/events/ozone/evdev/input_device_factory_evdev.cc File ui/events/ozone/evdev/input_device_factory_evdev.cc (right): https://codereview.chromium.org/2263693003/diff/80001/ui/events/ozone/evdev/input_device_factory_evdev.cc#newcode352 ui/events/ozone/evdev/input_device_factory_evdev.cc:352: converter->SetPalmSuppressionCallback(base::Callback<void(bool)>()); This call isn't conditional on settings, can you ...
4 years, 3 months ago (2016-08-26 00:58:34 UTC) #9
denniskempin
https://codereview.chromium.org/2263693003/diff/80001/ui/events/ozone/evdev/input_device_factory_evdev.cc File ui/events/ozone/evdev/input_device_factory_evdev.cc (right): https://codereview.chromium.org/2263693003/diff/80001/ui/events/ozone/evdev/input_device_factory_evdev.cc#newcode352 ui/events/ozone/evdev/input_device_factory_evdev.cc:352: converter->SetPalmSuppressionCallback(base::Callback<void(bool)>()); On 2016/08/26 00:58:34, spang wrote: > This call ...
4 years, 3 months ago (2016-08-26 21:56:02 UTC) #10
spang
lgtm https://codereview.chromium.org/2263693003/diff/120001/ui/events/ozone/evdev/input_device_factory_evdev.cc File ui/events/ozone/evdev/input_device_factory_evdev.cc (right): https://codereview.chromium.org/2263693003/diff/120001/ui/events/ozone/evdev/input_device_factory_evdev.cc#newcode243 ui/events/ozone/evdev/input_device_factory_evdev.cc:243: converter->HasPen()) Please add braces when the body spans ...
4 years, 3 months ago (2016-08-26 22:20:03 UTC) #11
denniskempin
all done. Go go gadget CQ https://codereview.chromium.org/2263693003/diff/120001/ui/events/ozone/evdev/input_device_factory_evdev.cc File ui/events/ozone/evdev/input_device_factory_evdev.cc (right): https://codereview.chromium.org/2263693003/diff/120001/ui/events/ozone/evdev/input_device_factory_evdev.cc#newcode243 ui/events/ozone/evdev/input_device_factory_evdev.cc:243: converter->HasPen()) On 2016/08/26 ...
4 years, 3 months ago (2016-08-26 23:02:08 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2263693003/160001
4 years, 3 months ago (2016-08-26 23:03:27 UTC) #15
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 3 months ago (2016-08-26 23:47:02 UTC) #17
commit-bot: I haz the power
4 years, 3 months ago (2016-08-26 23:49:13 UTC) #19
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/0cf5d6752db81e256e5e705bc64c4bb04dc1e34a
Cr-Commit-Position: refs/heads/master@{#414860}

Powered by Google App Engine
This is Rietveld 408576698