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

Issue 597479 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
(currently inactive on Chromium)
Closed: Sep 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocked on:
issue 624534

Blocking:
issue 558575
issue 624074



Sign in to add a comment

[scroll anchoring] get all tests passing

Project Member Reported by skobes@chromium.org, Mar 24 2016

Issue description

The following tests currently fail (see trybot results on http://crrev.com/1824113002):

[webkit_unit_tests]
WebFrameResizeTest.ResizeYieldsCorrectScrollAndScaleForFixedLayout

[browser_tests]
AutoScrollExtensionSettingsWebUITest.testAutoScroll

[layout tests]
compositing/absolute-position-changed-in-composited-layer.html
css3/flexbox/child-overflow.html
editing/execCommand/insert-line-break-no-scroll.html
fast/canvas/draw-focus-if-needed-scrolls.html
fast/css/zoom-body-scroll.html
fast/dom/Window/window-scaled-viewport-properties.html
fast/events/touch/gesture/gesture-scrollbar-mainframe.html
fast/repaint/absolute-position-changed.html
fast/repaint/intermediate-layout-position-clip.html
fast/repaint/line-in-scrolled-clipped-block.html
fast/scroll-behavior/main-frame-scroll-in-quirks-mode.html
fast/scroll-behavior/main-frame-scroll-in-standards-mode.html
fast/scrolling/fixed-position-scroll-into-view.html
fast/scrolling/scroll-to-origin-no-layout.html
fast/scrolling/scroll-to-origin-with-options-no-layout.html
http/tests/navigation/same-document-scroll-position-restore.html
inspector/console/console-viewport-selection.html
virtual/display_list_2d_canvas/fast/canvas/draw-focus-if-needed-scrolls.html
virtual/gpu/fast/canvas/draw-focus-if-needed-scrolls.html
virtual/pointerevent/fast/events/touch/gesture/gesture-scrollbar-mainframe.html
virtual/rootlayerscrolls/fast/scrolling/fixed-position-scroll-into-view.html
virtual/rootlayerscrolls/fast/scrolling/scroll-to-origin-no-layout.html
virtual/rootlayerscrolls/fast/scrolling/scroll-to-origin-with-options-no-layout.html
virtual/scroll_customization/fast/events/touch/gesture/gesture-scrollbar-mainframe.html
virtual/scroll_customization/fast/scroll-behavior/main-frame-scroll-in-quirks-mode.html
virtual/scroll_customization/fast/scroll-behavior/main-frame-scroll-in-standards-mode.html
virtual/scroll_customization/fast/scrolling/fixed-position-scroll-into-view.html
virtual/scroll_customization/fast/scrolling/scroll-to-origin-no-layout.html
virtual/scroll_customization/fast/scrolling/scroll-to-origin-with-options-no-layout.html
virtual/smoothscrolling/fast/events/touch/gesture/gesture-scrollbar-mainframe.html
virtual/threaded/fast/scroll-behavior/main-frame-scroll-in-quirks-mode.html
virtual/threaded/fast/scroll-behavior/main-frame-scroll-in-standards-mode.html
virtual/trustedeventsdefaultaction/fast/events/touch/gesture/gesture-scrollbar-mainframe.html
 

Comment 1 by skobes@chromium.org, Jun 29 2016

Blocking: 624074

Comment 2 by ymalik@chromium.org, Jul 19 2016

Cc: -ymalik@chromium.org skobes@chromium.org
Owner: ymalik@chromium.org
Project Member

Comment 3 by bugdroid1@chromium.org, Jul 22 2016

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

commit 4b34e4b56319572e06425dd77e4d3b30d86ce049
Author: ymalik <ymalik@chromium.org>
Date: Fri Jul 22 18:35:05 2016

FrameView shouldn't apply scroll anchoring when root layer scrolling is enabled

Before this patch, when root layer scrolling was enabled, both FV and PLSA would
perform scroll anchoring. FV doesn't need perform scroll anchoring for the main
frame because PLSA will do the right thing.

This issue was found because the following tests failed when ScrollAnchoring was
turned on by default:
virtual/rootlayerscrolls/fast/scrolling/scroll-into-view-collapsed-div.html
virtual/rootlayerscrolls/fast/scrolling/fractional-scroll-offset-document.html

BUG= 597479 , 558575 

Review-Url: https://codereview.chromium.org/2176523003
Cr-Commit-Position: refs/heads/master@{#407211}

[modify] https://crrev.com/4b34e4b56319572e06425dd77e4d3b30d86ce049/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/4b34e4b56319572e06425dd77e4d3b30d86ce049/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/4b34e4b56319572e06425dd77e4d3b30d86ce049/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.cpp
[modify] https://crrev.com/4b34e4b56319572e06425dd77e4d3b30d86ce049/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.h
[modify] https://crrev.com/4b34e4b56319572e06425dd77e4d3b30d86ce049/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/4b34e4b56319572e06425dd77e4d3b30d86ce049/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h

Project Member

Comment 4 by bugdroid1@chromium.org, Jul 26 2016

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

commit 4577baf99363df344a6e1180cce4ac0436f5ce04
Author: ymalik <ymalik@chromium.org>
Date: Tue Jul 26 22:37:16 2016

Fix layout tests that would fail if ScrollAnchoring was promoted to experimental

A lot of these tests were failing because the test expectations such as 'shouldBe' and
'shouldBeGreaterThan', etc were actively modifying the DOM. This resulted in scroll
anchoring making adjustments, and consequently causing the succeeding expectations
to fail. The simple fix here is to add "setPrintTestResultsLazily" to the tests so that the
logging from the expectations is queued up and outputted at the end of the tests. This
CL also migrates some js-tests to use testharness.js where its easy to do so.

Some of the fixes are non-trivial and the inline comments explain the reasoning behind
the fixes.

Can't promote ScrollAnchoring to experiment until the following bug is fixed:
 crbug.com/624534 , which causes inspector/console/console-viewport-selection.html
to fail.

BUG= 597479 

Review-Url: https://codereview.chromium.org/2165763002
Cr-Commit-Position: refs/heads/master@{#407941}

[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/editing/execCommand/insert-line-break-no-scroll.html
[delete] https://crrev.com/91224d8c9f54a8a6d9ed8fcffb43fde276ce4afa/third_party/WebKit/LayoutTests/fast/canvas/draw-focus-if-needed-scrolls-expected.txt
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/canvas/draw-focus-if-needed-scrolls.html
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/css/sticky/sticky-container-moved.html
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/css/zoom-body-scroll.html
[delete] https://crrev.com/91224d8c9f54a8a6d9ed8fcffb43fde276ce4afa/third_party/WebKit/LayoutTests/fast/dom/horizontal-scrollbar-when-dir-change-expected.txt
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/dom/horizontal-scrollbar-when-dir-change.html
[delete] https://crrev.com/91224d8c9f54a8a6d9ed8fcffb43fde276ce4afa/third_party/WebKit/LayoutTests/fast/dom/vertical-scrollbar-when-dir-change-expected.txt
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/dom/vertical-scrollbar-when-dir-change.html
[delete] https://crrev.com/91224d8c9f54a8a6d9ed8fcffb43fde276ce4afa/third_party/WebKit/LayoutTests/fast/events/touch/gesture/gesture-scrollbar-mainframe-expected.txt
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/events/touch/gesture/gesture-scrollbar-mainframe.html
[delete] https://crrev.com/91224d8c9f54a8a6d9ed8fcffb43fde276ce4afa/third_party/WebKit/LayoutTests/fast/scrolling/fixed-position-scroll-into-view-expected.txt
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/scrolling/fixed-position-scroll-into-view.html
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/scrolling/scroll-to-origin-no-layout.html
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/fast/scrolling/scroll-to-origin-with-options-no-layout.html
[modify] https://crrev.com/4577baf99363df344a6e1180cce4ac0436f5ce04/third_party/WebKit/LayoutTests/http/tests/navigation/same-document-scroll-position-restore.html

Comment 5 by skobes@chromium.org, Aug 17 2016

Blockedon: 624534
Project Member

Comment 6 by bugdroid1@chromium.org, Sep 13 2016

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

commit c8d07b366c6d97e2df003fc1960e09543b05285f
Author: ymalik <ymalik@chromium.org>
Date: Tue Sep 13 23:23:27 2016

Promote Scroll Anchoring to experimental

BUG= 597479 

Review-Url: https://codereview.chromium.org/2291653002
Cr-Commit-Position: refs/heads/master@{#418408}

[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/fast/css/getComputedStyle/computed-style-listing-expected.txt
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-listing-expected.txt
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/fast/dom/vertical-scrollbar-in-rtl-expected.txt
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/fast/dom/vertical-scrollbar-in-rtl.html
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/svg/css/getComputedStyle-listing-expected.txt
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/LayoutTests/webexposed/css-properties-as-js-properties-expected.txt
[modify] https://crrev.com/c8d07b366c6d97e2df003fc1960e09543b05285f/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in

Comment 7 by skobes@chromium.org, Sep 14 2016

From https://codereview.chromium.org/2335363003/ CQ results it looks like AutoScrollExtensionSettingsWebUITest.testAutoScroll is failing on all platforms.

[5065:5065:0913/192819:ERROR:CONSOLE(0)] "Uncaught (in promise) AssertionError: expected 65 to equal 0", source: chrome://extensions-frame/?id=ldnnhddmnhbkjipkidpdiheffobcpfmf (0)
BrowserTestBase received signal: Terminated. Backtrace:
#0 0x0000030afcae base::debug::StackTrace::StackTrace()
#1 0x0000036ae2f9 content::(anonymous namespace)::DumpStackTraceSignalHandler()
#2 0x7f84189240b0 <unknown>
#3 0x7f84189d5993 __poll
#4 0x7f841c94fff6 <unknown>
#5 0x7f841c950124 g_main_context_iteration
#6 0x0000030cf0b6 base::MessagePumpGlib::Run()
#7 0x0000030ccc7d base::MessageLoop::RunHandler()
#8 0x0000030ec8f0 base::RunLoop::Run()
#9 0x0000036d833c content::RunThisRunLoop()
#10 0x0000036d82da content::RunMessageLoop()
#11 0x000000fecbc3 WebUITestHandler::WaitForResult()
#12 0x000000fec736 WebUITestHandler::RunJavaScriptTestWithResult()
#13 0x000001138feb WebUIBrowserTest::RunJavascriptUsingHandler()
#14 0x0000011395c4 WebUIBrowserTest::RunJavascriptTestF()
#15 0x00000155ff10 AutoScrollExtensionSettingsWebUITest_testAutoScroll_Test::RunTestOnMainThread()
Project Member

Comment 8 by bugdroid1@chromium.org, Sep 14 2016

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

commit 5172d6d95e6fc36231bf14cd970989f19d5cdcb9
Author: ymalik <ymalik@chromium.org>
Date: Wed Sep 14 16:02:01 2016

Fix ScrollAnimator::hasRunningAnimation to account for the PostAnimationCleanup

Note that this bug was found while working on  crbug.com/597479 .
fast/dom/vertical-scrollbar-in-rtl.html was failing a DCHECK because we would try to adjust
when there was no animation.

This CL also exposes RunState via runStateForTesting.

BUG= 597479 

Review-Url: https://codereview.chromium.org/2336823003
Cr-Commit-Position: refs/heads/master@{#418574}

[modify] https://crrev.com/5172d6d95e6fc36231bf14cd970989f19d5cdcb9/third_party/WebKit/Source/platform/scroll/ScrollAnimator.cpp
[modify] https://crrev.com/5172d6d95e6fc36231bf14cd970989f19d5cdcb9/third_party/WebKit/Source/platform/scroll/ScrollAnimatorCompositorCoordinator.h
[modify] https://crrev.com/5172d6d95e6fc36231bf14cd970989f19d5cdcb9/third_party/WebKit/Source/platform/scroll/ScrollAnimatorTest.cpp

Comment 9 by skobes@chromium.org, Sep 14 2016

Blockedon: 646977
Blockedon: -646977
Status: Fixed (was: Available)
https://codereview.chromium.org/2335363003/#ps20001 has green bots
Labels: Hotlist-Input-Dev

Sign in to add a comment