|
|
DescriptionShow Overlay Scrollbar when GestureScrollUpdate
Currently, we only show overlay scrollbars once the page/scroller actually
changes position. In this patch, I also call the
WillUpdateScroll(rename from DidScrollUpdate) when GestureScrollUpdate so we can
show scrollbar when we receive scroll gestures.
BUG=675594
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
Review-Url: https://codereview.chromium.org/2611013002
Cr-Commit-Position: refs/heads/master@{#456474}
Committed: https://chromium.googlesource.com/chromium/src/+/b2b25bd2d961354db5081b6090d3782c10513fab
Patch Set 1 #Patch Set 2 : add will update scroll #Patch Set 3 : rebase & merge 2716453005 & fix tests #
Total comments: 6
Patch Set 4 : bokan comments addressed #
Total comments: 1
Patch Set 5 : bokan comments addressed #
Total comments: 1
Patch Set 6 : add comment #
Total comments: 1
Patch Set 7 : add comment to DidResize #Patch Set 8 : rebase #Patch Set 9 : ScrollingGestureUpdate should only effect Aura Overlay Scrollbar #
Total comments: 4
Patch Set 10 : bokan comment#70 addressed #
Messages
Total messages: 79 (54 generated)
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ==========
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ==========
chaopeng@chromium.org changed reviewers: + bokan@chromium.org
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Please take a early look at this one.
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 ==========
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: android_n5x_swarming_rel on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_n5x_...)
I think it'd be simpler to add a method on ScrollbarAnimationController like willUpdateScroll() that sets opacity to 1. Call this from of LTHI::ScrollBy and LTHI::ScrollAnimated before any early returns.
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ==========
On 2017/01/05 13:44:25, bokan wrote: > I think it'd be simpler to add a method on ScrollbarAnimationController like > willUpdateScroll() that sets opacity to 1. Call this from of LTHI::ScrollBy and > LTHI::ScrollAnimated before any early returns. bokan@, I added willUpdateScroll and didResize. Maybe we can remove DidScrollUpdate. PTAL.
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
The CQ bit was unchecked by chaopeng@chromium.org
Patchset #3 (id:40001) has been deleted
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Updated, PTAL. Thank you.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_hos... File cc/trees/layer_tree_host_impl_unittest.cc (right): https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_hos... cc/trees/layer_tree_host_impl_unittest.cc:2766: // If no scroll happened during a scroll gesture, it appears scrollbars and I would leave this case as is and make sure no GSU means no effect. Add a test below that checks that an empty ScrollBy queues an animation. Also, please add a check for !ScrollbarsHidden https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_hos... cc/trees/layer_tree_host_impl_unittest.cc:2907: EXPECT_EQ(base::TimeDelta::FromMilliseconds(20), Is this because the layer is already scrolled to the maximum offset so previously it wouldn't have queued an animation? https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_imp... File cc/trees/layer_tree_impl.cc (right): https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_imp... cc/trees/layer_tree_impl.cc:251: scrollbar_needs_animation |= clip_layer_size_did_change |= Nit: separate this into separate lines.
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Updated, PTAL. Thank you. https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_hos... File cc/trees/layer_tree_host_impl_unittest.cc (right): https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_hos... cc/trees/layer_tree_host_impl_unittest.cc:2907: EXPECT_EQ(base::TimeDelta::FromMilliseconds(20), On 2017/02/27 23:34:16, bokan wrote: > Is this because the layer is already scrolled to the maximum offset so > previously it wouldn't have queued an animation? Yes, https://cs.chromium.org/chromium/src/cc/trees/layer_tree_host_impl_unittest.c... https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_imp... File cc/trees/layer_tree_impl.cc (right): https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_imp... cc/trees/layer_tree_impl.cc:251: scrollbar_needs_animation |= clip_layer_size_did_change |= On 2017/02/27 23:34:17, bokan wrote: > Nit: separate this into separate lines. This is formatted by clang-format.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_imp... File cc/trees/layer_tree_impl.cc (right): https://codereview.chromium.org/2611013002/diff/60001/cc/trees/layer_tree_imp... cc/trees/layer_tree_impl.cc:251: scrollbar_needs_animation |= clip_layer_size_did_change |= On 2017/02/28 01:51:12, chaopeng wrote: > On 2017/02/27 23:34:17, bokan wrote: > > Nit: separate this into separate lines. > > This is formatted by clang-format. I mean separate statements. Turn it in to this: clip_layer_size_did_change |= scrollbar->SetClipLayerLength(...); scrollbar_needs_animation |= clip_layer_size_did_change; https://codereview.chromium.org/2611013002/diff/80001/cc/trees/layer_tree_hos... File cc/trees/layer_tree_host_impl_unittest.cc (right): https://codereview.chromium.org/2611013002/diff/80001/cc/trees/layer_tree_hos... cc/trees/layer_tree_host_impl_unittest.cc:2775: // If no scroll happened during a scroll gesture, it appears scrollbars and nit: "appears" -> "fades in"
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
The CQ bit was unchecked by chaopeng@chromium.org
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
Patchset #5 (id:100001) has been deleted
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by chaopeng@chromium.org
Updated, PTAL.
lgtm % comment https://codereview.chromium.org/2611013002/diff/120001/cc/input/scrollbar_ani... File cc/input/scrollbar_animation_controller.h (right): https://codereview.chromium.org/2611013002/diff/120001/cc/input/scrollbar_ani... cc/input/scrollbar_animation_controller.h:68: void WillUpdateScroll(); Please add a comment here that this expects to be called even if the scroll position won't change as a result of the scroll.
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
The CQ bit was unchecked by chaopeng@chromium.org
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
chaopeng@chromium.org changed reviewers: + weiliangc@chromium.org
weiliangc@chromium.org: PTAL, Thank you.
LGTM % adding comment. https://codereview.chromium.org/2611013002/diff/140001/cc/input/scrollbar_ani... File cc/input/scrollbar_animation_controller.h (right): https://codereview.chromium.org/2611013002/diff/140001/cc/input/scrollbar_ani... cc/input/scrollbar_animation_controller.h:71: void DidResize(); Could you also comment on when DidResize is supposed to be called? (I'm assuming whenever scroll bar or scroll area changed size?)
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
The CQ bit was unchecked by chaopeng@chromium.org
The CQ bit was checked by chaopeng@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from bokan@chromium.org, weiliangc@chromium.org Link to the patchset: https://codereview.chromium.org/2611013002/#ps160001 (title: "add comment to DidResize")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device-xcode-...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...)
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by chaopeng@chromium.org
The CQ bit was checked by chaopeng@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from bokan@chromium.org, weiliangc@chromium.org Link to the patchset: https://codereview.chromium.org/2611013002/#ps180001 (title: "rebase")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
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_...)
The CQ bit was checked by chaopeng@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by chaopeng@chromium.org
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ==========
chaopeng@chromium.org changed reviewers: + pdr@chromium.org
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the DidScrollUpdate when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the WillUpdateScroll(rename from DidScrollUpdate) when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ==========
Patchset #8 (id:180001) has been deleted
Patchset #8 (id:200001) has been deleted
pdr: PTAL. I used CurrentlyScrollingLayer previously to find ScrollbarAnimationController now I moved to CurrentlyScrollingNode()::owning_layer_id.
On 2017/03/02 at 17:32:22, chaopeng wrote: > pdr: PTAL. I used CurrentlyScrollingLayer previously to find ScrollbarAnimationController now I moved to CurrentlyScrollingNode()::owning_layer_id. I'm in the middle of a large refactor to stop using owning_layer_id and instead use either the scroll node's id or the scroll node's element_id (https://crbug.com/693740). I was actually planning on moving ScrollbarAnimationControllerForId to take an element_id today, but we don't need to hold your patch up on that. Do you see any potential issues with your code and using element_ids instead of layer ids? If not, LGTM for the use of owning_layer_id.
On 2017/03/02 18:13:02, pdr. wrote: > On 2017/03/02 at 17:32:22, chaopeng wrote: > > pdr: PTAL. I used CurrentlyScrollingLayer previously to find > ScrollbarAnimationController now I moved to > CurrentlyScrollingNode()::owning_layer_id. > > I'm in the middle of a large refactor to stop using owning_layer_id and instead > use either the scroll node's id or the scroll node's element_id > (https://crbug.com/693740). I was actually planning on moving > ScrollbarAnimationControllerForId to take an element_id today, but we don't need > to hold your patch up on that. Do you see any potential issues with your code > and using element_ids instead of layer ids? If not, LGTM for the use of > owning_layer_id. Ok, Thank you. But I found a new issue related to property_tree. would not land it now.
Show Overlay Scrollbar when GestureScrollUpdate should only effect Aura Overlay Scrollbar. bokan@, weiliangc@ PTAL. Thank you.
Couple of nits but still lgtm once those are fixed. https://codereview.chromium.org/2611013002/diff/240001/cc/input/scrollbar_ani... File cc/input/scrollbar_animation_controller.cc (right): https://codereview.chromium.org/2611013002/diff/240001/cc/input/scrollbar_ani... cc/input/scrollbar_animation_controller.cc:221: if (need_thinning_animation_) Instead of using need_thinning_animation_, add a bool show_scrollbars_on_scroll_gesture_ and set it appropriately in the constructors. https://codereview.chromium.org/2611013002/diff/240001/cc/input/scrollbar_ani... File cc/input/scrollbar_animation_controller_unittest.cc (right): https://codereview.chromium.org/2611013002/diff/240001/cc/input/scrollbar_ani... cc/input/scrollbar_animation_controller_unittest.cc:1232: // Confirm the scrollbar not appears by WillUpdateScroll on Android. Nit: "scrollbar not appears by WillUpdateScroll" -> "scrollbar does not appear on WillUpdateScroll" https://codereview.chromium.org/2611013002/diff/240001/cc/trees/layer_tree_ho... File cc/trees/layer_tree_host_impl_unittest.cc (right): https://codereview.chromium.org/2611013002/diff/240001/cc/trees/layer_tree_ho... cc/trees/layer_tree_host_impl_unittest.cc:2849: // gesture, it appears scrollbars and schedules a delay fade out. nit: "it appears scrollbars and schedules" -> "show scrollbars and schedule" https://codereview.chromium.org/2611013002/diff/240001/cc/trees/layer_tree_ho... cc/trees/layer_tree_host_impl_unittest.cc:2975: // For Aura Overlay Scrollbar, scrollbar appears even scroll offset not nit: "even scroll offset not change" -> "even if scroll offset didn't change"
weiliangc@ PTAL. Thank you.
LGTM.
The CQ bit was checked by chaopeng@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from pdr@chromium.org, bokan@chromium.org Link to the patchset: https://codereview.chromium.org/2611013002/#ps260001 (title: "bokan comment#70 addressed")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 260001, "attempt_start_ts": 1489434589561110, "parent_rev": "e973fb670fcbdd7dc263f037d6d79fa31abb6553", "commit_rev": "b2b25bd2d961354db5081b6090d3782c10513fab"}
Message was sent while issue was closed.
Description was changed from ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the WillUpdateScroll(rename from DidScrollUpdate) when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel ========== to ========== Show Overlay Scrollbar when GestureScrollUpdate Currently, we only show overlay scrollbars once the page/scroller actually changes position. In this patch, I also call the WillUpdateScroll(rename from DidScrollUpdate) when GestureScrollUpdate so we can show scrollbar when we receive scroll gestures. BUG=675594 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2611013002 Cr-Commit-Position: refs/heads/master@{#456474} Committed: https://chromium.googlesource.com/chromium/src/+/b2b25bd2d961354db5081b6090d3... ==========
Message was sent while issue was closed.
Committed patchset #10 (id:260001) as https://chromium.googlesource.com/chromium/src/+/b2b25bd2d961354db5081b6090d3...
Message was sent while issue was closed.
A revert of this CL (patchset #10 id:260001) has been created in https://codereview.chromium.org/2748343004/ by chaopeng@chromium.org. The reason for reverting is: memory regression: crbug.com/701810. |