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

Issue 592098 link

Starred by 19 users

Aura overlay scrollbars: inconsistent rendering, wrong paint order

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

Issue description

Overlay scrollbars on Aura (Linux / Windows / ChromeOS) can be enabled through about:flags or passing --enable-overlay-scrollbar.

These scrollbars render very differently for composited vs. non-composited scrollers, as seen on https://output.jsbin.com/tuxobo (contents attached, with screenshot).

This is because the composited scrollbars are painted by cc::SolidColorScrollbarLayer, versus Blink's ScrollbarThemeOverlay.

In addition to the rendering difference, non-composited overlay scrollbars have incorrect paint order with respect to composited descendents inside the scroller (the green box on the right).

The general solution for the paint order issue is slimming paint (issue 471333), but we may want some interim mitigation if we plan to ship overlay scrollbars ( issue 274010 ).
 
scrollers.html
983 bytes View Download
screenshot.png
21.6 KB View Download
Components: Blink>Layout>Scrollbars Blink>Scroll
Cc: skobes@chromium.org durga.behera@chromium.org jbau...@chromium.org pfeldman@chromium.org ajha@chromium.org brajkumar@chromium.org
 Issue 590136  has been merged into this issue.
Blocking: 274010
Components: Blink>Paint
Blocking: 307091

Comment 6 by bokan@chromium.org, Sep 22 2016

Owner: bokan@chromium.org

Comment 7 by bokan@chromium.org, Sep 22 2016

Labels: Hotlist-Input-Dev

Comment 8 by bokan@chromium.org, Oct 4 2016

Cc: jam...@chromium.org bokan@chromium.org wjmaclean@chromium.org glen@chromium.org kenrb@chromium.org aelias@chromium.org danakj@chromium.org rbyers@chromium.org kuscher@chromium.org tkonch...@chromium.org jochen@chromium.org chaopeng@chromium.org
 Issue 299059  has been merged into this issue.

Comment 9 by bokan@chromium.org, Oct 11 2016

Status: Started (was: Available)
Project Member

Comment 10 by bugdroid1@chromium.org, Oct 19 2016

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

commit 3d914bde3081131a655b467c1a7a232c7c065007
Author: bokan <bokan@chromium.org>
Date: Wed Oct 19 15:07:58 2016

Change Aura overlay scrollbars from solid color to painted scrollbars.

With this change, the Aura overlay scrollbars are now painted by the native
theme. If the scroller is composited, these scrollbars will now be uploaded to
the compositor as PaintedScrollbarLayers rather than SolidColorScrollbarLayers.

Additionally, many of the MD scrollbar constants and properties are scattered
around the code. This patch moves them into a single location in
ui/native_theme. I've also updated the values to match the latest spec.
Follow-up patches will make use of these values from the compositor.

BUG= 592098 , 652520
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://chromiumcodereview.appspot.com/2421913002
Cr-Commit-Position: refs/heads/master@{#426191}

[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/blimp/client/support/compositor/blimp_layer_tree_settings.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/cc/layers/scrollbar_layer_unittest.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/cc/trees/layer_tree_settings.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/cc/trees/layer_tree_settings.h
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/third_party/WebKit/Source/platform/scroll/ScrollbarThemeAura.cpp
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/ui/native_theme/BUILD.gn
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/ui/native_theme/native_theme_aura.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/ui/native_theme/native_theme_aura.h
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/ui/native_theme/native_theme_base.cc
[modify] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/ui/native_theme/native_theme_base.h
[add] https://crrev.com/3d914bde3081131a655b467c1a7a232c7c065007/ui/native_theme/overlay_scrollbar_constants_aura.h

Comment 11 by bokan@chromium.org, Oct 26 2016

Cc: sgu...@chromium.org tbuck...@chromium.org
Just to update, we've decided on a compromise for launching on CrOS. Non-composited scrollbars will have the same look as composited scrollbars when fully activated but they won't have the thinning animation that composited scrollers do. Adding animation isn't worth the significant technical burden.

Non-composited scrollers are only a problem on lo-DPI displays which is a shrinking population of Chromebooks and nested scrollers, while not rare, aren't that prevalent. Additionally, with the work done in  issue 381840 , authors can easily make their nested scrollers composited by adding a background-color.

What's left to do in this bug is to make the scrollbars fade out/disappear when idle since they may be overlaying something the user wants to click on. 

Comment 12 by bokan@chromium.org, Oct 26 2016

Oh, and here's a picture of how a composited scroller looks vs. non-composited
Screenshot from 2016-10-26 09:46:44.png
182 KB View Download
Cc: -rbyers@chromium.org
Project Member

Comment 14 by bugdroid1@chromium.org, Nov 3 2016

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

commit 4430234f2f5f52efe60ad2b8e6608112352259da
Author: bokan <bokan@chromium.org>
Date: Thu Nov 03 16:41:22 2016

Implement overlay scrollbar fade out for non-composited scrollers.

In crrev.com/2442573002 and crrev.com/2453553003 I added fade out for Aura
overlay scrollbars. In this patch I add a simple instantly disappearing
fade-out for scrollers that aren't composited.

The changes in this patch are:

-Plumb through the fade out durations into Blink. Any time a ScrollableArea is
scrolled or resized we show the scrollbars and start a timer to make them
disappear. The scrollbars are marked as "hidden" and made disabled and invisible
to hit testing.

-Fixed hit testing for overlay scrollbars so we can't scroll by clicking on the
track (which isn't painted).

-Fixed two layout tests:
  third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
  overlay-scrollbar-mouse-capture.html
  These tests turn on overlay scrollbars but try to scroll by clicking a
  button/track which I fixed. The tests now drag the thumb instead.

-In crrev.com/2453553003 I added didChangeScrollbarsHidden to disable overlay
scrollbars so they're invisible to hit testing. It turns out Mac overlay
scrollbars already have this functionality in
ScrollableArea::scrollbarVisibilityChanged and
Scrollbar::shouldParticipateInHitTesting so I removed didChangeScrollbarsHidden
and used these. I also removed some redundancy in the Mac path so that Mac and
Aura overlays disable hit testing in the same way.

-Removed the static compile assert about ScrollableArea staying small. There's
no reason ScrollableArea is particularily special and this encourages
developers to duplicate functionality in the descendant classes.

BUG= 592098 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

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

[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/content/child/webthemeengine_impl_android.cc
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/content/child/webthemeengine_impl_default.cc
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/content/child/webthemeengine_impl_default.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
[delete] https://crrev.com/2fec850438d6e4595e5fe255749dfdb8e91cc34d/third_party/WebKit/LayoutTests/platform/mac/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture.html
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/frame/RootFrameViewport.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/frame/RootFrameViewport.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.mm
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollAnimatorBase.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/Scrollbar.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/Scrollbar.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarThemeClient.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.mm
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/Source/web/tests/WebFrameTest.cpp
[modify] https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da/third_party/WebKit/public/platform/WebThemeEngine.h

Status: Fixed (was: Started)
With the above patch, the rendering will be consistent and we'll fade out the scrollbars for non-composited scrollers. We lack animations compared to scrollers on the compositor and the paint order problem remains but we've decided the complexity vs utility tradeoff isn't worth it.
Project Member

Comment 16 by bugdroid1@chromium.org, Nov 4 2016

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

commit 8625005503e5b3296269bf319d52bc70eb58f006
Author: tapted <tapted@chromium.org>
Date: Fri Nov 04 02:00:04 2016

Revert of Implement overlay scrollbar fade out for non-composited scrollers. (patchset #7 id:120001 of https://codereview.chromium.org/2467693002/ )

Reason for revert:
WebKit Linux Precise MSAN failing since
https://uberchromegw.corp.google.com/i/chromium.webkit/builders/WebKit%20Linux%20Precise%20MSAN/builds/855

Errors like

STDERR: ==4==WARNING: MemorySanitizer: use-of-uninitialized-value
STDERR:     #0 0xafdca9e in showOverlayScrollbars third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp:569:7

Original issue's description:
> Implement overlay scrollbar fade out for non-composited scrollers.
>
> In crrev.com/2442573002 and crrev.com/2453553003 I added fade out for Aura
> overlay scrollbars. In this patch I add a simple instantly disappearing
> fade-out for scrollers that aren't composited.
>
> The changes in this patch are:
>
> -Plumb through the fade out durations into Blink. Any time a ScrollableArea is
> scrolled or resized we show the scrollbars and start a timer to make them
> disappear. The scrollbars are marked as "hidden" and made disabled and invisible
> to hit testing.
>
> -Fixed hit testing for overlay scrollbars so we can't scroll by clicking on the
> track (which isn't painted).
>
> -Fixed two layout tests:
>   third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
>   overlay-scrollbar-mouse-capture.html
>   These tests turn on overlay scrollbars but try to scroll by clicking a
>   button/track which I fixed. The tests now drag the thumb instead.
>
> -In crrev.com/2453553003 I added didChangeScrollbarsHidden to disable overlay
> scrollbars so they're invisible to hit testing. It turns out Mac overlay
> scrollbars already have this functionality in
> ScrollableArea::scrollbarVisibilityChanged and
> Scrollbar::shouldParticipateInHitTesting so I removed didChangeScrollbarsHidden
> and used these. I also removed some redundancy in the Mac path so that Mac and
> Aura overlays disable hit testing in the same way.
>
> -Removed the static compile assert about ScrollableArea staying small. There's
> no reason ScrollableArea is particularily special and this encourages
> developers to duplicate functionality in the descendant classes.
>
> BUG= 592098 
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
>
> Committed: https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da
> Cr-Commit-Position: refs/heads/master@{#429616}

TBR=jbroman@chromium.org,dtapuska@chromium.org,piman@chromium.org,pkasting@chromium.org,rbyers@chromium.org,skobes@chromium.org,bokan@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 592098 

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

[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/content/child/webthemeengine_impl_android.cc
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/content/child/webthemeengine_impl_default.cc
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/content/child/webthemeengine_impl_default.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
[add] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/LayoutTests/platform/mac/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture.html
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/frame/RootFrameViewport.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/frame/RootFrameViewport.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.mm
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollAnimatorBase.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/Scrollbar.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/Scrollbar.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarThemeClient.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.mm
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/Source/web/tests/WebFrameTest.cpp
[modify] https://crrev.com/8625005503e5b3296269bf319d52bc70eb58f006/third_party/WebKit/public/platform/WebThemeEngine.h

Project Member

Comment 17 by bugdroid1@chromium.org, Nov 4 2016

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

commit 60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf
Author: bokan <bokan@chromium.org>
Date: Fri Nov 04 23:26:44 2016

[Reland] Implement overlay scrollbar fade out for non-composited scrollers.

In crrev.com/2442573002 and crrev.com/2453553003 I added fade out for Aura
overlay scrollbars. In this patch I add a simple instantly disappearing
fade-out for scrollers that aren't composited.

The changes in this patch are:

-Plumb through the fade out durations into Blink. Any time a ScrollableArea is
scrolled or resized we show the scrollbars and start a timer to make them
disappear. The scrollbars are marked as "hidden" and made disabled and invisible
to hit testing.

-Fixed hit testing for overlay scrollbars so we can't scroll by clicking on the
track (which isn't painted).

-Fixed two layout tests:
  third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
  overlay-scrollbar-mouse-capture.html
  These tests turn on overlay scrollbars but try to scroll by clicking a
  button/track which I fixed. The tests now drag the thumb instead.

-In crrev.com/2453553003 I added didChangeScrollbarsHidden to disable overlay
scrollbars so they're invisible to hit testing. It turns out Mac overlay
scrollbars already have this functionality in
ScrollableArea::scrollbarVisibilityChanged and
Scrollbar::shouldParticipateInHitTesting so I removed didChangeScrollbarsHidden
and used these. I also removed some redundancy in the Mac path so that Mac and
Aura overlays disable hit testing in the same way.

-Removed the static compile assert about ScrollableArea staying small. There's
no reason ScrollableArea is particularily special and this encourages
developers to duplicate functionality in the descendant classes.

BUG= 592098 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Committed: https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da
Review-Url: https://codereview.chromium.org/2467693002
Cr-Original-Commit-Position: refs/heads/master@{#429616}
Cr-Commit-Position: refs/heads/master@{#430065}

[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/content/child/webthemeengine_impl_android.cc
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/content/child/webthemeengine_impl_default.cc
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/content/child/webthemeengine_impl_default.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
[delete] https://crrev.com/d65783431437f61ed9962c4e6968fce6103ca2e1/third_party/WebKit/LayoutTests/platform/mac/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture.html
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/frame/RootFrameViewport.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/frame/RootFrameViewport.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.mm
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollAnimatorBase.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/Scrollbar.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/Scrollbar.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarThemeClient.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.mm
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/Source/web/tests/WebFrameTest.cpp
[modify] https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf/third_party/WebKit/public/platform/WebThemeEngine.h

Project Member

Comment 18 by bugdroid1@chromium.org, Nov 9 2016

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

commit 424b967d331e2c317501abd82f275ecb3c7d24d5
Author: bokan <bokan@chromium.org>
Date: Wed Nov 09 01:56:32 2016

Revert of Implement overlay scrollbar fade out for non-composited scrollers. (patchset #11 id:200001 of https://codereview.chromium.org/2467693002/ )

Reason for revert:
Speculative revert for issue crbug.com/662402

BUG=662402

Original issue's description:
> [Reland] Implement overlay scrollbar fade out for non-composited scrollers.
>
> In crrev.com/2442573002 and crrev.com/2453553003 I added fade out for Aura
> overlay scrollbars. In this patch I add a simple instantly disappearing
> fade-out for scrollers that aren't composited.
>
> The changes in this patch are:
>
> -Plumb through the fade out durations into Blink. Any time a ScrollableArea is
> scrolled or resized we show the scrollbars and start a timer to make them
> disappear. The scrollbars are marked as "hidden" and made disabled and invisible
> to hit testing.
>
> -Fixed hit testing for overlay scrollbars so we can't scroll by clicking on the
> track (which isn't painted).
>
> -Fixed two layout tests:
>   third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
>   overlay-scrollbar-mouse-capture.html
>   These tests turn on overlay scrollbars but try to scroll by clicking a
>   button/track which I fixed. The tests now drag the thumb instead.
>
> -In crrev.com/2453553003 I added didChangeScrollbarsHidden to disable overlay
> scrollbars so they're invisible to hit testing. It turns out Mac overlay
> scrollbars already have this functionality in
> ScrollableArea::scrollbarVisibilityChanged and
> Scrollbar::shouldParticipateInHitTesting so I removed didChangeScrollbarsHidden
> and used these. I also removed some redundancy in the Mac path so that Mac and
> Aura overlays disable hit testing in the same way.
>
> -Removed the static compile assert about ScrollableArea staying small. There's
> no reason ScrollableArea is particularily special and this encourages
> developers to duplicate functionality in the descendant classes.
>
> BUG= 592098 
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
>
> Committed: https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da
> Committed: https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf
> Cr-Original-Commit-Position: refs/heads/master@{#429616}
> Cr-Commit-Position: refs/heads/master@{#430065}

TBR=jbroman@chromium.org,dtapuska@chromium.org,piman@chromium.org,pkasting@chromium.org,rbyers@chromium.org,skobes@chromium.org,thestig@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 592098 

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

[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/content/child/webthemeengine_impl_android.cc
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/content/child/webthemeengine_impl_default.cc
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/content/child/webthemeengine_impl_default.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
[add] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/LayoutTests/platform/mac/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture.html
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/frame/RootFrameViewport.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/frame/RootFrameViewport.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.mm
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollAnimatorBase.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/Scrollbar.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/Scrollbar.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarThemeClient.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.mm
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/Source/web/tests/WebFrameTest.cpp
[modify] https://crrev.com/424b967d331e2c317501abd82f275ecb3c7d24d5/third_party/WebKit/public/platform/WebThemeEngine.h

Project Member

Comment 19 by bugdroid1@chromium.org, Nov 11 2016

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

commit eb757fdbd63242a73f3074e4a50742d08d6ea488
Author: bokan <bokan@chromium.org>
Date: Fri Nov 11 02:27:08 2016

[Reland] Implement overlay scrollbar fade out for non-composited scrollers.

In crrev.com/2442573002 and crrev.com/2453553003 I added fade out for Aura
overlay scrollbars. In this patch I add a simple instantly disappearing
fade-out for scrollers that aren't composited.

The changes in this patch are:

-Plumb through the fade out durations into Blink. Any time a ScrollableArea is
scrolled or resized we show the scrollbars and start a timer to make them
disappear. The scrollbars are marked as "hidden" and made disabled and invisible
to hit testing.

-Fixed hit testing for overlay scrollbars so we can't scroll by clicking on the
track (which isn't painted).

-Fixed two layout tests:
  third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
  overlay-scrollbar-mouse-capture.html
  These tests turn on overlay scrollbars but try to scroll by clicking a
  button/track which I fixed. The tests now drag the thumb instead.

-In crrev.com/2453553003 I added didChangeScrollbarsHidden to disable overlay
scrollbars so they're invisible to hit testing. It turns out Mac overlay
scrollbars already have this functionality in
ScrollableArea::scrollbarVisibilityChanged and
Scrollbar::shouldParticipateInHitTesting so I removed didChangeScrollbarsHidden
and used these. I also removed some redundancy in the Mac path so that Mac and
Aura overlays disable hit testing in the same way.

-Removed the static compile assert about ScrollableArea staying small. There's
no reason ScrollableArea is particularily special and this encourages
developers to duplicate functionality in the descendant classes.

BUG= 592098 , 662402
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Committed: https://crrev.com/4430234f2f5f52efe60ad2b8e6608112352259da
Committed: https://crrev.com/60d2bbbc8fa4cce01bbd90c97d3e989a47d6dedf
Review-Url: https://codereview.chromium.org/2467693002
Cr-Original-Original-Commit-Position: refs/heads/master@{#429616}
Cr-Original-Commit-Position: refs/heads/master@{#430065}
Cr-Commit-Position: refs/heads/master@{#431466}

[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/content/child/webthemeengine_impl_android.cc
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/content/child/webthemeengine_impl_default.cc
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/content/child/webthemeengine_impl_default.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/LayoutTests/fast/scrolling/scrollbar-tickmarks-hittest.html
[delete] https://crrev.com/273b9672cfbf83ffed8f52a91cb59a6e78a64577/third_party/WebKit/LayoutTests/platform/mac/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture-expected.txt
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/LayoutTests/plugins/overlay-scrollbar-mouse-capture.html
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/frame/RootFrameViewport.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/frame/RootFrameViewport.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/mac/ScrollAnimatorMac.mm
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollAnimatorBase.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/Scrollbar.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/Scrollbar.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarThemeClient.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.mm
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlay.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/Source/web/tests/WebFrameTest.cpp
[modify] https://crrev.com/eb757fdbd63242a73f3074e4a50742d08d6ea488/third_party/WebKit/public/platform/WebThemeEngine.h

Comment 20 by bokan@chromium.org, Nov 19 2016

Accidentally used wrong bug number on a follow up patch that should have been attached here:

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

commit 4337e5dded29ebb7ef9401cb55e4effcf4f73b69
Author: bokan <bokan@chromium.org>
Date: Fri Nov 18 21:18:20 2016

Disable overlay scrollbars to hide them on non-Mac.

In https://codereview.chromium.org/2467693002/ I accidentally removed the code
that disabled/enabled scrollbars based on whether they're hidden. This was
because it caused an invalidation cycle on Mac but I had forgotten that the
reason for disabling scrollbars that are invisible is that painting code uses
this as a signal to "hide" the scrollbar.

This patch brings the code back but makes the behavior dependent on a flag in
ScrollbarTheme. This is needed since the signalling is flipped on Mac. On Mac,
painting code makes the scrollbars invisible which then sets the
scrollbarsHidden flag on the ScrollableArea. On Aura, a timer determines that
the scrollbars need to be hidden and disables them which causes an invalidation
and repaint.

BUG=307091
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

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

[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/LayoutTests/TestExpectations
[add] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/LayoutTests/scrollbars/hidden-scrollbars-invisible-expected.html
[add] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/LayoutTests/scrollbars/hidden-scrollbars-invisible.html
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/core/frame/FrameView.cpp
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/core/frame/FrameView.h
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/core/testing/Internals.cpp
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.h
[modify] https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69/third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h

Comment 21 by son...@google.com, May 4 2017

Status: Verified (was: Fixed)
verified

Sign in to add a comment