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

Issue 2509843004: Disable overlay scrollbars to hide them on non-Mac. (Closed)

Created:
4 years, 1 month ago by bokan
Modified:
4 years, 1 month ago
Reviewers:
skobes, jbroman
CC:
blink-reviews, blink-reviews-paint_chromium.org, chromium-reviews, dshwang
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

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 Committed: https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69 Cr-Commit-Position: refs/heads/master@{#433300}

Patch Set 1 #

Patch Set 2 : Forgot to git add test #

Patch Set 3 : Fix tests #

Total comments: 7

Patch Set 4 : Addressed feedback #

Total comments: 2

Patch Set 5 : Rebase #

Patch Set 6 : Renamed to shouldDisableInvisibleScrollbars #

Unified diffs Side-by-side diffs Delta from patch set Stats (+109 lines, -14 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/scrollbars/hidden-scrollbars-invisible.html View 1 2 3 1 chunk +31 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/scrollbars/hidden-scrollbars-invisible-expected.html View 1 2 3 1 chunk +11 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/frame/FrameView.h View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/frame/FrameView.cpp View 1 2 3 4 5 4 chunks +19 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp View 1 2 3 4 5 3 chunks +17 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/testing/Internals.cpp View 1 2 2 chunks +6 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h View 1 2 3 4 5 1 chunk +7 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.h View 1 2 3 4 5 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollbarThemeOverlayMock.h View 1 chunk +8 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 39 (24 generated)
bokan
Hey Steve, ptal. Its unfortunate that Mac scrollbars work the way they do. We definitely ...
4 years, 1 month ago (2016-11-16 22:17:09 UTC) #5
skobes
lgtm w/ nits https://codereview.chromium.org/2509843004/diff/40001/third_party/WebKit/LayoutTests/TestExpectations File third_party/WebKit/LayoutTests/TestExpectations (right): https://codereview.chromium.org/2509843004/diff/40001/third_party/WebKit/LayoutTests/TestExpectations#newcode894 third_party/WebKit/LayoutTests/TestExpectations:894: crbug.com/417782 virtual/rootlayerscrolls/scrollbars/hidden-scrollbars-invisible.html [ Failure ] Do ...
4 years, 1 month ago (2016-11-17 21:16:31 UTC) #12
bokan
+jbroman@ for platform https://codereview.chromium.org/2509843004/diff/40001/third_party/WebKit/LayoutTests/TestExpectations File third_party/WebKit/LayoutTests/TestExpectations (right): https://codereview.chromium.org/2509843004/diff/40001/third_party/WebKit/LayoutTests/TestExpectations#newcode894 third_party/WebKit/LayoutTests/TestExpectations:894: crbug.com/417782 virtual/rootlayerscrolls/scrollbars/hidden-scrollbars-invisible.html [ Failure ] On ...
4 years, 1 month ago (2016-11-17 23:22:27 UTC) #15
skobes
lgtm https://codereview.chromium.org/2509843004/diff/40001/third_party/WebKit/LayoutTests/TestExpectations File third_party/WebKit/LayoutTests/TestExpectations (right): https://codereview.chromium.org/2509843004/diff/40001/third_party/WebKit/LayoutTests/TestExpectations#newcode894 third_party/WebKit/LayoutTests/TestExpectations:894: crbug.com/417782 virtual/rootlayerscrolls/scrollbars/hidden-scrollbars-invisible.html [ Failure ] On 2016/11/17 23:22:27, ...
4 years, 1 month ago (2016-11-17 23:54:59 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2509843004/60001
4 years, 1 month ago (2016-11-18 00:07:51 UTC) #21
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/338221)
4 years, 1 month ago (2016-11-18 00:50:37 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2509843004/60001
4 years, 1 month ago (2016-11-18 01:17:58 UTC) #25
commit-bot: I haz the power
Try jobs failed on following builders: linux_layout_tests_slimming_paint_v2 on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL)
4 years, 1 month ago (2016-11-18 01:28:54 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2509843004/60001
4 years, 1 month ago (2016-11-18 01:41:04 UTC) #29
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/307707)
4 years, 1 month ago (2016-11-18 02:52:36 UTC) #31
jbroman
platform rs lgtm with one nit https://codereview.chromium.org/2509843004/diff/60001/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h File third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h (right): https://codereview.chromium.org/2509843004/diff/60001/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h#newcode79 third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h:79: virtual bool disableInvisibleScrollbars() ...
4 years, 1 month ago (2016-11-18 19:00:27 UTC) #32
bokan
https://codereview.chromium.org/2509843004/diff/60001/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h File third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h (right): https://codereview.chromium.org/2509843004/diff/60001/third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h#newcode79 third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h:79: virtual bool disableInvisibleScrollbars() const { return true; } On ...
4 years, 1 month ago (2016-11-18 19:09:00 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2509843004/120001
4 years, 1 month ago (2016-11-18 19:10:21 UTC) #36
commit-bot: I haz the power
Committed patchset #6 (id:120001)
4 years, 1 month ago (2016-11-18 21:18:48 UTC) #37
commit-bot: I haz the power
4 years, 1 month ago (2016-11-18 21:21:56 UTC) #39
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/4337e5dded29ebb7ef9401cb55e4effcf4f73b69
Cr-Commit-Position: refs/heads/master@{#433300}

Powered by Google App Engine
This is Rietveld 408576698