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

Issue 2233543002: Make first TouchStart and first TouchMove events on a flinging layer non-blocking (Closed)

Created:
4 years, 4 months ago by lanwei
Modified:
4 years, 4 months ago
CC:
asvitkine+watch_chromium.org, blink-reviews, blink-reviews-api_chromium.org, blink-reviews-events_chromium.org, chromium-reviews, darin-cc_chromium.org, dglazkov+blink, dtapuska+chromiumwatch_chromium.org, dtapuska+blinkwatch_chromium.org, eae+blinkwatch, jam, kinuko+watch, mlamouri+watch-content_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Make first TouchStart and first TouchMove events on a flinging layer non-blocking. Blocking touchstart and first touchMove handlers during fling can cause major hiccups during fling boosting / flywheel fling. We are doing a passive event listener during fling intervention experiment to see if we can improve the fling performance by forcing touchstart and first touchmove to be passive when there is an active fling animation. BUG=595327 Committed: https://crrev.com/4cc123442a0ef00e377d7e9b8703ba3bf4c6b5a0 Cr-Commit-Position: refs/heads/master@{#413189}

Patch Set 1 : new fling #

Total comments: 4

Patch Set 2 : Change dispatch type ack and log preventDefault #

Patch Set 3 : set non_blocking to true #

Total comments: 1

Patch Set 4 : fling intervetion #

Total comments: 6

Patch Set 5 : fling intervetion #

Total comments: 12

Patch Set 6 : Delete passive #

Total comments: 1

Patch Set 7 : rename #

Unified diffs Side-by-side diffs Delta from patch set Stats (+361 lines, -85 lines) Patch
M content/browser/renderer_host/input/touch_event_queue.cc View 1 2 3 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/renderer_host/input/touch_event_queue_unittest.cc View 1 2 3 1 chunk +24 lines, -0 lines 0 comments Download
M content/common/input/event_with_latency_info.cc View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M content/common/input/event_with_latency_info_unittest.cc View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M content/renderer/input/main_thread_event_queue.h View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 0 comments Download
M content/renderer/input/main_thread_event_queue.cc View 1 2 3 4 5 6 4 chunks +20 lines, -4 lines 0 comments Download
M content/renderer/input/main_thread_event_queue_unittest.cc View 1 2 3 4 5 6 2 chunks +151 lines, -1 line 0 comments Download
M content/renderer/input/render_widget_input_handler.cc View 1 2 3 4 5 3 chunks +15 lines, -18 lines 0 comments Download
M content/renderer/render_widget_unittest.cc View 1 2 3 4 5 4 chunks +30 lines, -12 lines 0 comments Download
M third_party/WebKit/Source/core/events/Event.h View 1 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/events/Event.cpp View 1 3 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/input/TouchEventManager.h View 1 2 3 4 1 chunk +0 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/input/TouchEventManager.cpp View 1 2 3 4 5 3 chunks +21 lines, -31 lines 0 comments Download
M third_party/WebKit/Source/platform/PlatformEvent.h View 1 2 3 4 5 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/PlatformTouchEvent.h View 1 3 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/web/WebInputEventConversion.cpp View 1 2 3 4 5 2 chunks +2 lines, -1 line 0 comments Download
M third_party/WebKit/public/platform/WebInputEvent.h View 1 2 3 4 5 3 chunks +6 lines, -2 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 7 chunks +68 lines, -8 lines 0 comments Download

Messages

Total messages: 124 (103 generated)
lanwei
4 years, 4 months ago (2016-08-10 12:47:54 UTC) #25
dtapuska
https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/main_thread_event_queue.cc File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/main_thread_event_queue.cc#newcode81 content/renderer/input/main_thread_event_queue.cc:81: if (is_flinging_ && does |is_flinging_| change after the touch ...
4 years, 4 months ago (2016-08-10 14:47:42 UTC) #27
lanwei
4 years, 4 months ago (2016-08-11 11:55:02 UTC) #40
lanwei
4 years, 4 months ago (2016-08-12 02:50:26 UTC) #55
dtapuska
https://codereview.chromium.org/2233543002/diff/190001/content/renderer/input/main_thread_event_queue.cc File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/190001/content/renderer/input/main_thread_event_queue.cc#newcode83 content/renderer/input/main_thread_event_queue.cc:83: touch_event.touchStartOrFirstTouchMove = touch_start_or_first_touch_move; Why is this populated here? Can't ...
4 years, 4 months ago (2016-08-12 14:40:00 UTC) #56
lanwei
dtapuska@ could you please take another look?
4 years, 4 months ago (2016-08-13 01:27:08 UTC) #64
dtapuska
https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Source/core/input/TouchEventManager.cpp File third_party/WebKit/Source/core/input/TouchEventManager.cpp (left): https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Source/core/input/TouchEventManager.cpp#oldcode100 third_party/WebKit/Source/core/input/TouchEventManager.cpp:100: m_waitingForFirstTouchMove = true; Can the class variable now be ...
4 years, 4 months ago (2016-08-15 14:41:29 UTC) #65
lanwei
https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Source/core/input/TouchEventManager.cpp File third_party/WebKit/Source/core/input/TouchEventManager.cpp (left): https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Source/core/input/TouchEventManager.cpp#oldcode100 third_party/WebKit/Source/core/input/TouchEventManager.cpp:100: m_waitingForFirstTouchMove = true; On 2016/08/15 14:41:29, dtapuska wrote: > ...
4 years, 4 months ago (2016-08-17 01:22:35 UTC) #70
dtapuska
On 2016/08/17 01:22:35, lanwei wrote: > https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Source/core/input/TouchEventManager.cpp > File third_party/WebKit/Source/core/input/TouchEventManager.cpp (left): > > https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Source/core/input/TouchEventManager.cpp#oldcode100 > ...
4 years, 4 months ago (2016-08-17 13:48:36 UTC) #71
tdresser
Nit: In the description: "We should force them to be passive as our part of ...
4 years, 4 months ago (2016-08-17 14:32:28 UTC) #72
dtapuska
https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Source/core/events/Event.h File third_party/WebKit/Source/core/events/Event.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Source/core/events/Event.h#newcode261 third_party/WebKit/Source/core/events/Event.h:261: unsigned m_preventDefaultCalledOnUncancelableEvent : 1; On 2016/08/17 14:32:28, tdresser wrote: ...
4 years, 4 months ago (2016-08-17 18:54:59 UTC) #81
lanwei
https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input/main_thread_event_queue.cc File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input/main_thread_event_queue.cc#newcode76 content/renderer/input/main_thread_event_queue.cc:76: features::kPassiveEventListenersDueToFling) && On 2016/08/17 14:32:27, tdresser wrote: > Let's ...
4 years, 4 months ago (2016-08-18 12:31:47 UTC) #99
tdresser
LGTM https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Source/platform/PlatformEvent.h File third_party/WebKit/Source/platform/PlatformEvent.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Source/platform/PlatformEvent.h#newcode134 third_party/WebKit/Source/platform/PlatformEvent.h:134: ListenersForcedNonBlockingPassiveDueToFling, On 2016/08/18 12:31:47, lanwei wrote: > On ...
4 years, 4 months ago (2016-08-18 12:43:53 UTC) #100
lanwei
esprehn@ could you please take a look at third_party/WebKit/* and content/renderer/render_widget_unittest.cc isherman@ could you please ...
4 years, 4 months ago (2016-08-18 15:13:20 UTC) #105
lanwei
bokan@ could you please take a look at third_party/WebKit/Source/core and web Thank you.
4 years, 4 months ago (2016-08-18 21:20:14 UTC) #111
Ilya Sherman
histograms lgtm, thanks
4 years, 4 months ago (2016-08-18 21:28:44 UTC) #112
bokan
rs lgtm
4 years, 4 months ago (2016-08-19 15:08:20 UTC) #113
esprehn
lgtm
4 years, 4 months ago (2016-08-19 16:10:10 UTC) #114
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/2233543002/350001
4 years, 4 months ago (2016-08-19 17:49:26 UTC) #120
commit-bot: I haz the power
Committed patchset #7 (id:350001)
4 years, 4 months ago (2016-08-19 18:23:34 UTC) #122
commit-bot: I haz the power
4 years, 4 months ago (2016-08-19 18:25:34 UTC) #124
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/4cc123442a0ef00e377d7e9b8703ba3bf4c6b5a0
Cr-Commit-Position: refs/heads/master@{#413189}

Powered by Google App Engine
This is Rietveld 408576698