|
|
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. |
DescriptionMake 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 #Messages
Total messages: 124 (103 generated)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
Description was changed from ========== fling fling test BUG=595327 ========== to ========== Blocking touchstart and first touchMove handlers during fling can cause major hiccups during fling boosting / flywheel fling. We should force them to be passive as our part of intervention. BUG=595327 ==========
lanwei@chromium.org changed reviewers: + dtapuska@chromium.org, tdresser@chromium.org
Description was changed from ========== Blocking touchstart and first touchMove handlers during fling can cause major hiccups during fling boosting / flywheel fling. We should force them to be passive as our part of intervention. BUG=595327 ========== to ========== Blocking touchstart and first touchMove handlers during fling can cause major hiccups during fling boosting / flywheel fling. We should force them to be passive as our part of intervention. BUG=595327 ==========
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Patchset #1 (id:1) has been deleted
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: cast_shell_android on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_a...) linux_chromium_chromeos_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #1 (id:20001) has been deleted
Patchset #1 (id:40001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
Patchset #1 (id:10014) has been deleted
https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/... File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/... content/renderer/input/main_thread_event_queue.cc:81: if (is_flinging_ && does |is_flinging_| change after the touch start? I'm not sure what buying the first touch move after touch start is buying us here; as opposed to checking if the event is cancelable which you are checking if it is blocking. Perhaps we should add is first touch move after start just to the web input event and avoid all these states all over the place? https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/... File content/renderer/input/main_thread_event_queue_unittest.cc (right): https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/... content/renderer/input/main_thread_event_queue_unittest.cc:315: last_touch_event = What are you expecting to have dispatchedDuringFling be here? We probably should be testing that it doesn't get modified with a non-cancelable event? Likely it is still taking on the last value in the previous test code because you are re-using kEvents[0]. https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/... File content/renderer/input/render_widget_input_handler.h (right): https://codereview.chromium.org/2233543002/diff/70001/content/renderer/input/... content/renderer/input/render_widget_input_handler.h:108: // True if waiting on first touch move after a touch start. ditto. If the event conveyed this info; then we wouldn't need to store it in various places https://codereview.chromium.org/2233543002/diff/70001/third_party/WebKit/Sour... File third_party/WebKit/Source/core/input/TouchEventManager.cpp (right): https://codereview.chromium.org/2233543002/diff/70001/third_party/WebKit/Sour... third_party/WebKit/Source/core/input/TouchEventManager.cpp:218: DEFINE_STATIC_LOCAL(EnumerationHistogram, touchDispositionsDuringFlingHistogram, ("Event.Touch.TouchDispositionsDuringFling2", TouchEventDispatchResultTypeMax)); if it is forced to be non blocking then it will always be not handled won't it. because you can't prevent default it? we might need a uma metric to track how many times preventDefault was called inside a intervened event; that may be a useful metric. I'm not sure this is really caturing that.
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #2 (id:90001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Patchset #2 (id:110001) has been deleted
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #3 (id:150001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Patchset #3 (id:170001) has been deleted
https://codereview.chromium.org/2233543002/diff/190001/content/renderer/input... File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/190001/content/renderer/input... 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 it be sent from the touch_event_queue? then it will be correct when the compositor deals with the events.
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #4 (id:210001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
dtapuska@ could you please take another look?
https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/input/TouchEventManager.cpp (left): https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Sou... third_party/WebKit/Source/core/input/TouchEventManager.cpp:100: m_waitingForFirstTouchMove = true; Can the class variable now be removed? https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... tools/metrics/histograms/histograms.xml:13232: + Deprecated 08/2016 in Issue 2233543002, and replaced by ditto https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... tools/metrics/histograms/histograms.xml:13427: + Deprecated 08/2016 in Issue 2233543002, and replaced by its kind of weird to call a review an issue #... do you want to use a crbug here? https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... tools/metrics/histograms/histograms.xml:13441: + <obsolete> ditto
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/input/TouchEventManager.cpp (left): https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Sou... third_party/WebKit/Source/core/input/TouchEventManager.cpp:100: m_waitingForFirstTouchMove = true; On 2016/08/15 14:41:29, dtapuska wrote: > Can the class variable now be removed? Done. https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... File tools/metrics/histograms/histograms.xml (right): https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... tools/metrics/histograms/histograms.xml:13427: + Deprecated 08/2016 in Issue 2233543002, and replaced by On 2016/08/15 14:41:29, dtapuska wrote: > its kind of weird to call a review an issue #... do you want to use a crbug > here? Done.
On 2016/08/17 01:22:35, lanwei wrote: > https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Sou... > File third_party/WebKit/Source/core/input/TouchEventManager.cpp (left): > > https://codereview.chromium.org/2233543002/diff/230001/third_party/WebKit/Sou... > third_party/WebKit/Source/core/input/TouchEventManager.cpp:100: > m_waitingForFirstTouchMove = true; > On 2016/08/15 14:41:29, dtapuska wrote: > > Can the class variable now be removed? > > Done. > > https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... > File tools/metrics/histograms/histograms.xml (right): > > https://codereview.chromium.org/2233543002/diff/230001/tools/metrics/histogra... > tools/metrics/histograms/histograms.xml:13427: + Deprecated 08/2016 in Issue > 2233543002, and replaced by > On 2016/08/15 14:41:29, dtapuska wrote: > > its kind of weird to call a review an issue #... do you want to use a crbug > > here? > > Done. lgtm
Nit: In the description: "We should force them to be passive as our part of intervention." This is an intervention, it isn't part of an intervention. https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... content/renderer/input/main_thread_event_queue.cc:76: features::kPassiveEventListenersDueToFling) && Let's read this flag once, and store the result in a member bool. https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... content/renderer/input/main_thread_event_queue.cc:86: is_last_touch_start_force_passive_ = true; This variable name is a bit confusing, as the tenses are mixed. was_last_touch_start_forced_passive? Or maybe just last_touch_start_forced_passive? https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... File content/renderer/input/render_widget_input_handler.cc (right): https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... content/renderer/input/render_widget_input_handler.cc:338: // TODO(lanwei): May remove it when we no longer need any metric for event Make it clear what "it" is here. Make this a bit more concrete, with a bug. e.g., "TODO(lanwei): Remove this metric in M5?, once we've gathered enough data to ..." https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/events/Event.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... third_party/WebKit/Source/core/events/Event.h:261: unsigned m_preventDefaultCalledOnUncancelableEvent : 1; This is a bit confusing. Are these events passive, or uncancellable? Perhaps the dispatch type should be "ForcedUncancellable" not "ForcedPassive"? https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/PlatformEvent.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/PlatformEvent.h:134: ListenersForcedNonBlockingPassiveDueToFling, Are we considering these passive, or non-cancellable, or both?
Description was changed from ========== Blocking touchstart and first touchMove handlers during fling can cause major hiccups during fling boosting / flywheel fling. We should force them to be passive as our part of intervention. BUG=595327 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
Description was changed from ========== 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 ========== to ========== 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 ==========
https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/events/Event.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... third_party/WebKit/Source/core/events/Event.h:261: unsigned m_preventDefaultCalledOnUncancelableEvent : 1; On 2016/08/17 14:32:28, tdresser wrote: > This is a bit confusing. Are these events passive, or uncancellable? > > Perhaps the dispatch type should be "ForcedUncancellable" not "ForcedPassive"? These events aren't really passive. They are forced uncancellable. I agree we need to clarify this.
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm6...) cast_shell_android on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_a...) linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...) cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #6 (id:270001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Patchset #7 (id:310001) has been deleted
Patchset #6 (id:290001) has been deleted
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... content/renderer/input/main_thread_event_queue.cc:76: features::kPassiveEventListenersDueToFling) && On 2016/08/17 14:32:27, tdresser wrote: > Let's read this flag once, and store the result in a member bool. Done. https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... content/renderer/input/main_thread_event_queue.cc:86: is_last_touch_start_force_passive_ = true; On 2016/08/17 14:32:27, tdresser wrote: > This variable name is a bit confusing, as the tenses are mixed. > > was_last_touch_start_forced_passive? > > Or maybe just > last_touch_start_forced_passive? Done. https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... File content/renderer/input/render_widget_input_handler.cc (right): https://codereview.chromium.org/2233543002/diff/250001/content/renderer/input... content/renderer/input/render_widget_input_handler.cc:338: // TODO(lanwei): May remove it when we no longer need any metric for event On 2016/08/17 14:32:28, tdresser wrote: > Make it clear what "it" is here. > Make this a bit more concrete, with a bug. > > e.g., > > "TODO(lanwei): Remove this metric in M5?, once we've gathered enough data to > ..." Done. https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/events/Event.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... third_party/WebKit/Source/core/events/Event.h:261: unsigned m_preventDefaultCalledOnUncancelableEvent : 1; On 2016/08/17 14:32:28, tdresser wrote: > This is a bit confusing. Are these events passive, or uncancellable? > > Perhaps the dispatch type should be "ForcedUncancellable" not "ForcedPassive"? Delete passive or use uncancellable, non-blocking. https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/PlatformEvent.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/PlatformEvent.h:134: ListenersForcedNonBlockingPassiveDueToFling, On 2016/08/17 14:32:28, tdresser wrote: > Are we considering these passive, or non-cancellable, or both? I think they are passive and also non-cancellable. All passive events are not cancelable. Not sure if we should replace passive with non-cancellable.
LGTM https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... File third_party/WebKit/Source/platform/PlatformEvent.h (right): https://codereview.chromium.org/2233543002/diff/250001/third_party/WebKit/Sou... third_party/WebKit/Source/platform/PlatformEvent.h:134: ListenersForcedNonBlockingPassiveDueToFling, On 2016/08/18 12:31:47, lanwei wrote: > On 2016/08/17 14:32:28, tdresser wrote: > > Are we considering these passive, or non-cancellable, or both? > > I think they are passive and also non-cancellable. All passive events are not > cancelable. Not sure if we should replace passive with non-cancellable. I think I'd prefer if the word "Passive" only referred to event listeners which the developer explicitly opted in to being passive. Ideally this would hold true in the feedback devtools provided as well. https://codereview.chromium.org/2233543002/diff/330001/content/renderer/input... File content/renderer/input/main_thread_event_queue.cc (right): https://codereview.chromium.org/2233543002/diff/330001/content/renderer/input... content/renderer/input/main_thread_event_queue.cc:88: last_touch_start_forced_nonblocking_ = true; Sorry, let's call this last_touch_start_forced_nonblocking_due_to_fling_. I'm going to plumb the main thread responsiveness intervention into the main thread event queue too, so we should keep this unambiguous.
lanwei@chromium.org changed reviewers: + dtapuska, vollick@chromium.org - dtapuska@chromium.org
lanwei@chromium.org changed reviewers: + dtapuska@chromium.org, vollick@chromium.org - dtapuska, vollick@chromium.org
lanwei@chromium.org changed reviewers: + esprehn@chromium.org, isherman@chromium.org
lanwei@chromium.org changed reviewers: - vollick@chromium.org
esprehn@ could you please take a look at third_party/WebKit/* and content/renderer/render_widget_unittest.cc isherman@ could you please take a look at tools/metrics/* Thank you.
lanwei@chromium.org changed reviewers: + bokan@chromium.org - esprehn@chromium.org
lanwei@chromium.org changed reviewers: + esprehn@chromium.org - bokan@chromium.org
lanwei@chromium.org changed reviewers: + bokan@chromium.org
lanwei@chromium.org changed reviewers: - esprehn@chromium.org
lanwei@chromium.org changed reviewers: + esprehn@chromium.org
bokan@ could you please take a look at third_party/WebKit/Source/core and web Thank you.
histograms lgtm, thanks
rs lgtm
lgtm
The CQ bit was checked by lanwei@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by lanwei@chromium.org
The CQ bit was checked by lanwei@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from dtapuska@chromium.org, bokan@chromium.org, esprehn@chromium.org, isherman@chromium.org, tdresser@chromium.org Link to the patchset: https://codereview.chromium.org/2233543002/#ps350001 (title: "rename")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== 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 ========== to ========== 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 ==========
Message was sent while issue was closed.
Committed patchset #7 (id:350001)
Message was sent while issue was closed.
Description was changed from ========== 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 ========== to ========== 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} ==========
Message was sent while issue was closed.
Patchset 7 (id:??) landed as https://crrev.com/4cc123442a0ef00e377d7e9b8703ba3bf4c6b5a0 Cr-Commit-Position: refs/heads/master@{#413189} |