Commit 0a6d8978 authored by Caleb Rouleau's avatar Caleb Rouleau Committed by Commit Bot

Revert "Send GSB before switching to mainthread scrolling in smooth scroll path."

This reverts commit 5d5a062f.

Reason for revert: added a failing test https://ci.chromium.org/buildbot/chromium.webkit/WebKit%20Win10/32246 see issue 822386

bug: 822386

Original change's description:
> Send GSB before switching to mainthread scrolling in smooth scroll path.
> 
> This cl is the equivalent of https://codereview.chromium.org/2854683002 fix for smooth scrolling
> path,if the compositor handles the GSB and during the scrolling we have to switch to main thread
> since the compositor cannot handle a GSU a GSB must be sent to the main thread since the original
> GSB was handled on the compositor rather than being sent to the main thread.
> 
> touchpad-scroll-impl-to-main.html is the test that forces switch from compositor thread to main
> thread in the middle of scrolling. It used to get executed with --disable-smooth-scrolling
> in this cl I've moved the test to a new virtual test suite that has default scroll animation
> value.
> 
> I have removed the test expectations since I have changed the test and this might fix the flake.
> 
> subpixel-accumulation.html needs scroll animation to be disabled and that's why I had to move it to
> a new test suite.
> 
> Bug: 820979, 708499, 757165, 800840
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Change-Id: I21b1f4285897d74559f6827e6a232f007dc897b0
> Reviewed-on: https://chromium-review.googlesource.com/961264
> Commit-Queue: Sahel Sharifymoghaddam <sahel@chromium.org>
> Reviewed-by: Timothy Dresser <tdresser@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#543425}

TBR=tdresser@chromium.org,sahel@chromium.org

Change-Id: I3c5253d96d011c9723063effac91c969ee352305
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 820979, 708499, 757165, 800840
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/963388Reviewed-by: default avatarCaleb Rouleau <crouleau@chromium.org>
Commit-Queue: Caleb Rouleau <crouleau@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543467}
parent 44f923b2
...@@ -2704,6 +2704,9 @@ crbug.com/749738 [ Win7 Debug ] http/tests/devtools/editor/text-editor-word-jump ...@@ -2704,6 +2704,9 @@ crbug.com/749738 [ Win7 Debug ] http/tests/devtools/editor/text-editor-word-jump
# Sheriff failures 2017-07-28 # Sheriff failures 2017-07-28
crbug.com/749738 [ Win7 Debug ] http/tests/devtools/console/console-format-es6-2.js [ Timeout ] crbug.com/749738 [ Win7 Debug ] http/tests/devtools/console/console-format-es6-2.js [ Timeout ]
# Sheriff failure 2017-08-07
crbug.com/708499 [ Linux ] virtual/wheelscrolllatching/fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Failure Pass ]
# Sheriff failure 2017-08-29 # Sheriff failure 2017-08-29
crbug.com/727252 [ Win7 ] external/wpt/media-source/mediasource-endofstream.html [ Pass Timeout ] crbug.com/727252 [ Win7 ] external/wpt/media-source/mediasource-endofstream.html [ Pass Timeout ]
...@@ -2887,6 +2890,7 @@ crbug.com/757165 [ Win ] paint/invalidation/scroll/scrollbar-damage-and-full-vie ...@@ -2887,6 +2890,7 @@ crbug.com/757165 [ Win ] paint/invalidation/scroll/scrollbar-damage-and-full-vie
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified-save-restore.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified-save-restore.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified.html [ Skip ]
crbug.com/757165 [ Win ] virtual/threaded/animations/svg/animated-filter-svg-element.html [ Skip ] crbug.com/757165 [ Win ] virtual/threaded/animations/svg/animated-filter-svg-element.html [ Skip ]
crbug.com/757165 [ Win ] virtual/wheelscrolllatching/fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-clipping.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-clipping.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-color.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-color.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-gradient.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-gradient.html [ Skip ]
...@@ -3186,6 +3190,9 @@ crbug.com/799814 [ Android ] fast/beacon/beacon-basic.html [ Pass Failure ] ...@@ -3186,6 +3190,9 @@ crbug.com/799814 [ Android ] fast/beacon/beacon-basic.html [ Pass Failure ]
# This test has been flaky for some time on Win 7 (dgb) # This test has been flaky for some time on Win 7 (dgb)
crbug.com/800078 [ Win7 ] http/tests/devtools/console/console-link-to-snippet.js [ Pass Failure ] crbug.com/800078 [ Win7 ] http/tests/devtools/console/console-link-to-snippet.js [ Pass Failure ]
# This test is flaking (failing, crashing) on mac_chromium_rel_ng.
crbug.com/800840 [ Mac ] virtual/wheelscrolllatching/fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Skip ]
# Sheriff failures 2018-01-19 # Sheriff failures 2018-01-19
# This test is failing regularly on Win 7 (dgb), WebKit Mac10.11 (dgb), # This test is failing regularly on Win 7 (dgb), WebKit Mac10.11 (dgb),
# WebKit Linux Trusty (dbg). # WebKit Linux Trusty (dbg).
......
...@@ -1061,7 +1061,7 @@ crbug.com/778875 virtual/threaded/fast/animationworklet/animation-worklet-scroll ...@@ -1061,7 +1061,7 @@ crbug.com/778875 virtual/threaded/fast/animationworklet/animation-worklet-scroll
crbug.com/692310 virtual/threaded/animations/composited-animations-rotate-zero-degrees.html [ Pass Failure Timeout ] crbug.com/692310 virtual/threaded/animations/composited-animations-rotate-zero-degrees.html [ Pass Failure Timeout ]
# This test uses internal call to initiate smooth scrolling on impl-thread. # This test uses internal call to initiate smooth scrolling on impl-thread.
crbug.com/667946 fast/compositor-wheel-scroll-latching/animated-scroll/touchpad-scroll-impl-to-main.html [ Failure ] crbug.com/667946 fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Failure ]
# virtual/threaded variants of sub-directories and tests already skipped or marked as failing above. # virtual/threaded variants of sub-directories and tests already skipped or marked as failing above.
......
...@@ -2763,6 +2763,9 @@ crbug.com/749738 [ Win7 Debug ] http/tests/devtools/editor/text-editor-word-jump ...@@ -2763,6 +2763,9 @@ crbug.com/749738 [ Win7 Debug ] http/tests/devtools/editor/text-editor-word-jump
# Sheriff failures 2017-08-04 # Sheriff failures 2017-08-04
crbug.com/626703 [ Win7 Release ] external/wpt/html/semantics/tabular-data/processing-model-1/span-limits.html [ Timeout ] crbug.com/626703 [ Win7 Release ] external/wpt/html/semantics/tabular-data/processing-model-1/span-limits.html [ Timeout ]
# Sheriff failure 2017-08-07
crbug.com/708499 [ Linux ] virtual/wheelscrolllatching/fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Failure Pass ]
crbug.com/731018 [ Mac ] sensor/accelerometer.html [ Failure Pass Crash ] crbug.com/731018 [ Mac ] sensor/accelerometer.html [ Failure Pass Crash ]
crbug.com/731018 [ Mac ] sensor/ambient-light-sensor.html [ Failure Pass Crash ] crbug.com/731018 [ Mac ] sensor/ambient-light-sensor.html [ Failure Pass Crash ]
crbug.com/731018 [ Mac ] sensor/gyroscope.html [ Failure Pass Crash ] crbug.com/731018 [ Mac ] sensor/gyroscope.html [ Failure Pass Crash ]
...@@ -2944,6 +2947,7 @@ crbug.com/757165 [ Win ] paint/invalidation/scroll/scrollbar-damage-and-full-vie ...@@ -2944,6 +2947,7 @@ crbug.com/757165 [ Win ] paint/invalidation/scroll/scrollbar-damage-and-full-vie
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified-save-restore.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified-save-restore.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-filter-modified.html [ Skip ]
crbug.com/757165 [ Win ] virtual/threaded/animations/svg/animated-filter-svg-element.html [ Skip ] crbug.com/757165 [ Win ] virtual/threaded/animations/svg/animated-filter-svg-element.html [ Skip ]
crbug.com/757165 [ Win ] virtual/wheelscrolllatching/fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-clipping.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-clipping.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-color.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-color.html [ Skip ]
crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-gradient.html [ Skip ] crbug.com/757165 [ Win ] virtual/gpu/fast/canvas/canvas-blending-color-over-gradient.html [ Skip ]
...@@ -3242,6 +3246,9 @@ crbug.com/798680 external/wpt/pointerevents/pointerlock/pointerevent_pointerlock ...@@ -3242,6 +3246,9 @@ crbug.com/798680 external/wpt/pointerevents/pointerlock/pointerevent_pointerlock
crbug.com/804682 [ Mac ] external/wpt/service-workers/service-worker/navigation-preload/resource-timing.https.html [ Pass Failure ] crbug.com/804682 [ Mac ] external/wpt/service-workers/service-worker/navigation-preload/resource-timing.https.html [ Pass Failure ]
crbug.com/799137 [ Mac ] virtual/modern-media-controls/media/controls/modern/doubletap-to-jump-backwards-at-start.html [ Pass Timeout ] crbug.com/799137 [ Mac ] virtual/modern-media-controls/media/controls/modern/doubletap-to-jump-backwards-at-start.html [ Pass Timeout ]
# This test is flaking (failing, crashing) on mac_chromium_rel_ng.
crbug.com/800840 [ Mac ] virtual/wheelscrolllatching/fast/compositor-wheel-scroll-latching/touchpad-scroll-impl-to-main.html [ Skip ]
# Sheriff failures 2018-01-23 # Sheriff failures 2018-01-23
# Flaking on linux_chromium_rel_ng # Flaking on linux_chromium_rel_ng
crbug.com/804709 [ Linux ] virtual/gpu/fast/canvas/canvas-fillPath-shadow.html [ Pass Failure ] crbug.com/804709 [ Linux ] virtual/gpu/fast/canvas/canvas-fillPath-shadow.html [ Pass Failure ]
......
...@@ -319,13 +319,7 @@ ...@@ -319,13 +319,7 @@
}, },
{ {
"prefix": "wheelscrolllatching", "prefix": "wheelscrolllatching",
"base": "fast/compositor-wheel-scroll-latching/animated-scroll", "base": "fast/compositor-wheel-scroll-latching",
"args": ["--enable-features=TouchpadAndWheelScrollLatching",
"--enable-threaded-compositing"]
},
{
"prefix": "wheelscrolllatching",
"base": "fast/compositor-wheel-scroll-latching/non-animated-scroll",
"args": ["--enable-features=TouchpadAndWheelScrollLatching", "args": ["--enable-features=TouchpadAndWheelScrollLatching",
"--enable-threaded-compositing", "--enable-threaded-compositing",
"--disable-smooth-scrolling"] "--disable-smooth-scrolling"]
......
<!DOCTYPE html> <!DOCTYPE html>
<script src="../../../resources/testharness.js"></script> <script src="../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script> <script src="../../resources/testharnessreport.js"></script>
<script> <script>
let t; let t;
if (window.internals && chrome && chrome.gpuBenchmarking) { if (window.internals && chrome && chrome.gpuBenchmarking) {
......
<!DOCTYPE HTML> <!DOCTYPE HTML>
<script src="../../../resources/testharness.js"></script> <script src="../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script> <script src="../../resources/testharnessreport.js"></script>
<style> <style>
body { body {
margin: 0px; margin: 0px;
...@@ -29,21 +29,21 @@ var rect = div.getBoundingClientRect(); ...@@ -29,21 +29,21 @@ var rect = div.getBoundingClientRect();
const GESTURE_SOURCE_TYPE = 2; // MOUSE_INPUT from synthetic_gesture_params.h const GESTURE_SOURCE_TYPE = 2; // MOUSE_INPUT from synthetic_gesture_params.h
function changeStyleToScrollOnMain() { function changeStyleToScrollOnMain() {
if(div.scrollTop > 100) if(div.scrollTop > 150)
div.style = "border-radius:40px; position:fixed;"; div.style = "border-radius:40px; position:fixed;";
} }
div.addEventListener("wheel", changeStyleToScrollOnMain, {passive: true}); div.addEventListener("scroll", changeStyleToScrollOnMain, {passive: true});
const MAX_RAF = 1000;
let last_scroll_offset = div.scrollTop; let last_scroll_offset = div.scrollTop;
var last_changed_count = 0; var last_changed_count = 0;
var raf_count = 0; var raf_count = 0;
function waitForAnimationEnd() { function waitForAnimationEnd() {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
function tick() { function tick() {
// We requestAnimationFrame until either 70 frames with no change observed // We requestAnimationFrame either for 1000 frames or until 20 frames with
// or the div is fully scrolled. // no change have been observed.
if (raf_count - last_changed_count > 70 || if (raf_count >= MAX_RAF || raf_count - last_changed_count > 20) {
div.scrollTop == div.scrollHeight - div.clientHeight) {
resolve(); resolve();
} else { } else {
if (div.scrollTop != last_scroll_offset) { if (div.scrollTop != last_scroll_offset) {
...@@ -66,7 +66,7 @@ promise_test(() => { ...@@ -66,7 +66,7 @@ promise_test(() => {
(rect.top + rect.bottom) / 2, (rect.top + rect.bottom) / 2,
GESTURE_SOURCE_TYPE, GESTURE_SOURCE_TYPE,
'down', 'down',
2000); 4000);
}).then(waitForAnimationEnd) }).then(waitForAnimationEnd)
.then(() => { .then(() => {
assert_equals(div.scrollTop, div.scrollHeight - div.clientHeight, assert_equals(div.scrollTop, div.scrollHeight - div.clientHeight,
......
This suite runs the tests in fast/compositor-wheel-scroll-latching/non-animated-scroll with This suite runs the tests in fast/compositor-wheel-scroll-latching with
# --enable-features=TouchpadAndWheelScrollLatching --enable-threaded-compositing --disable-smooth-scrolling # --enable-features=TouchpadAndWheelScrollLatching --enable-threaded-compositing --disable-smooth-scrolling
This suite runs the tests in fast/compositor-wheel-scroll-latching/animated-scroll with
# --enable-features=TouchpadAndWheelScrollLatching --enable-threaded-compositing
...@@ -765,12 +765,7 @@ InputHandlerProxy::HandleGestureScrollUpdate( ...@@ -765,12 +765,7 @@ InputHandlerProxy::HandleGestureScrollUpdate(
return DID_HANDLE; return DID_HANDLE;
case cc::InputHandler::SCROLL_IGNORED: case cc::InputHandler::SCROLL_IGNORED:
return DROP_EVENT; return DROP_EVENT;
case cc::InputHandler::SCROLL_ON_MAIN_THREAD: default:
case cc::InputHandler::SCROLL_UNKNOWN:
if (input_handler_->ScrollingShouldSwitchtoMainThread()) {
gesture_scroll_on_impl_thread_ = false;
client_->GenerateScrollBeginAndSendToMainThread(gesture_event);
}
return DID_NOT_HANDLE; return DID_NOT_HANDLE;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment