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

Issue 2453553003: Disable overlay scrollbars in Blink when hidden by the compositor. (Closed)

Created:
4 years, 1 month ago by bokan
Modified:
4 years, 1 month ago
CC:
ajuma+watch_chromium.org, blink-layers+watch_chromium.org, blink-reviews, blink-reviews-paint_chromium.org, blink-reviews-platform-graphics_chromium.org, Rik, cc-bugs_chromium.org, chaopeng, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), jbauman+watch_chromium.org, jbroman, Justin Novosad, kalyank, pdr+graphicswatchlist_chromium.org, piman+watch_chromium.org, rwlbuis, Stephen Chennney, sievers+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Disable overlay scrollbars in Blink when hidden by the compositor. This patch adds and plumbs through a one-way notification from the compositor's impl thread to Blink. This is used to prevent Blink from handling user input on Scrollbars in cases where they've been hidden, as happens when overlay scrollbars remain idle for a small amount of time. This patch makes use of this setting when fading out scrollbars on the compositor but this will also be used in Blink when scrollbars are faded-out there for non-composited scrollers. This should have no visible effect for anything but Aura overlay scrollbars. BUG=652826 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel Committed: https://crrev.com/169f5add2dd64e14cb89c8ac388bc81cc32121d8 Cr-Commit-Position: refs/heads/master@{#428628}

Patch Set 1 #

Total comments: 11

Patch Set 2 : Rebase #

Patch Set 3 : Addressing feedback + Tests #

Patch Set 4 : Addressing more feedback #

Patch Set 5 : Rebase #

Patch Set 6 : Fix Win Compile (Don't implicitly convert float->bool) #

Patch Set 7 : Another Win Build Fix (comparing unsigned and bool) #

Patch Set 8 : Another Win Fix (comparing unsigned vs bool) #

Patch Set 9 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+365 lines, -91 lines) Patch
M cc/input/scrollbar_animation_controller.h View 1 2 3 3 chunks +4 lines, -0 lines 0 comments Download
M cc/input/scrollbar_animation_controller.cc View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M cc/input/scrollbar_animation_controller_linear_fade_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M cc/input/scrollbar_animation_controller_thinning.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M cc/input/scrollbar_animation_controller_thinning.cc View 1 2 3 4 5 2 chunks +10 lines, -0 lines 0 comments Download
M cc/input/scrollbar_animation_controller_thinning_unittest.cc View 1 2 3 4 5 6 7 8 26 chunks +140 lines, -79 lines 0 comments Download
M cc/layers/layer.h View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M cc/layers/layer.cc View 1 2 3 4 1 chunk +5 lines, -0 lines 0 comments Download
M cc/layers/layer_client.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/layers/layer_impl.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M cc/layers/layer_impl.cc View 1 2 3 4 2 chunks +3 lines, -1 line 0 comments Download
M cc/proto/begin_main_frame_and_commit_state.proto View 1 chunk +6 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_common.h View 1 2 3 4 chunks +21 lines, -1 line 0 comments Download
M cc/trees/layer_tree_host_common.cc View 1 2 3 4 1 chunk +24 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 2 chunks +17 lines, -1 line 0 comments Download
M cc/trees/layer_tree_host_in_process.cc View 1 2 3 4 5 6 7 8 1 chunk +6 lines, -0 lines 0 comments Download
M cc/trees/property_tree.h View 1 2 3 4 2 chunks +2 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 6 7 8 3 chunks +8 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h View 1 2 3 4 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp View 1 2 3 4 5 6 7 8 2 chunks +17 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/GraphicsLayer.h View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp View 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollableArea.h View 1 2 3 4 5 6 7 8 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp View 1 2 3 4 5 6 7 8 3 chunks +14 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/web/tests/WebFrameTest.cpp View 1 2 3 4 5 6 7 8 2 chunks +57 lines, -0 lines 0 comments Download
M ui/compositor/layer.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M ui/compositor/layer.cc View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 55 (35 generated)
bokan
Alexandre, since Blink is responsible for handling all the input on scrollbars but the compositor ...
4 years, 1 month ago (2016-10-25 22:15:45 UTC) #4
aelias_OOO_until_Jul13
> otherwise the user can click and drag a scrollbar that's been faded out A ...
4 years, 1 month ago (2016-10-25 22:32:04 UTC) #5
bokan
On 2016/10/25 22:32:04, aelias wrote: > > otherwise the user can click and drag a ...
4 years, 1 month ago (2016-10-25 23:06:35 UTC) #6
aelias_OOO_until_Jul13
On 2016/10/25 at 23:06:35, bokan wrote: > The scrollbars fade in only when the user ...
4 years, 1 month ago (2016-10-26 02:53:02 UTC) #7
bokan
On 2016/10/26 02:53:02, aelias wrote: > On 2016/10/25 at 23:06:35, bokan wrote: > > The ...
4 years, 1 month ago (2016-10-26 13:38:46 UTC) #8
aelias_OOO_until_Jul13
OK, thanks for the context, overall approach SGTM. https://codereview.chromium.org/2453553003/diff/1/cc/input/scrollbar_animation_controller.h File cc/input/scrollbar_animation_controller.h (right): https://codereview.chromium.org/2453553003/diff/1/cc/input/scrollbar_animation_controller.h#newcode67 cc/input/scrollbar_animation_controller.h:67: int ...
4 years, 1 month ago (2016-10-26 19:01:03 UTC) #10
bokan
Tests added, ptal. https://codereview.chromium.org/2453553003/diff/1/cc/input/scrollbar_animation_controller.h File cc/input/scrollbar_animation_controller.h (right): https://codereview.chromium.org/2453553003/diff/1/cc/input/scrollbar_animation_controller.h#newcode67 cc/input/scrollbar_animation_controller.h:67: int scroll_layer_id_; On 2016/10/26 19:01:03, aelias ...
4 years, 1 month ago (2016-10-27 20:56:46 UTC) #13
aelias_OOO_until_Jul13
https://codereview.chromium.org/2453553003/diff/1/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2453553003/diff/1/cc/trees/layer_tree_host_impl.cc#newcode2225 cc/trees/layer_tree_host_impl.cc:2225: client_->SetNeedsCommitOnImplThread(); On 2016/10/27 at 20:56:46, bokan wrote: > On ...
4 years, 1 month ago (2016-10-27 21:22:09 UTC) #17
aelias_OOO_until_Jul13
On 2016/10/27 at 21:22:09, aelias wrote: > OK. Though with that bit added to LayerImpl, ...
4 years, 1 month ago (2016-10-27 21:22:51 UTC) #18
aelias_OOO_until_Jul13
lgtm modulo that
4 years, 1 month ago (2016-10-27 21:24:11 UTC) #19
bokan
On 2016/10/27 21:22:51, aelias wrote: > On 2016/10/27 at 21:22:09, aelias wrote: > > OK. ...
4 years, 1 month ago (2016-10-28 12:07:27 UTC) #20
bokan
+vollick@ for Source/platform and ui/compositor OWNER
4 years, 1 month ago (2016-10-28 12:16:24 UTC) #22
Ian Vollick
On 2016/10/28 12:16:24, bokan wrote: > +vollick@ for Source/platform and ui/compositor OWNER lgtm
4 years, 1 month ago (2016-10-29 03:23:10 UTC) #39
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/2453553003/140001
4 years, 1 month ago (2016-10-29 21:10:29 UTC) #42
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/292742) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, ...
4 years, 1 month ago (2016-10-29 21:13:18 UTC) #44
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/2453553003/160001
4 years, 1 month ago (2016-10-29 22:00:49 UTC) #47
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/253022)
4 years, 1 month ago (2016-10-29 23:09:18 UTC) #49
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/2453553003/160001
4 years, 1 month ago (2016-10-30 14:59:11 UTC) #51
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 1 month ago (2016-10-30 16:33:15 UTC) #53
commit-bot: I haz the power
4 years, 1 month ago (2016-10-30 16:48:52 UTC) #55
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/169f5add2dd64e14cb89c8ac388bc81cc32121d8
Cr-Commit-Position: refs/heads/master@{#428628}

Powered by Google App Engine
This is Rietveld 408576698