|
|
Chromium Code Reviews
DescriptionIframe/div MD scrollbars get idle when mouse leaves the nested elements.
If the scrollbar of a nested element is not captured, it
should get back to idle state when mouse leaves the element.
Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar.
With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe.
BUG=636393
TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
Committed: https://crrev.com/db2d55e87ca8e0a8c74d29f479ec498053495e6f
Cr-Commit-Position: refs/heads/master@{#427343}
Patch Set 1 #
Total comments: 2
Patch Set 2 : Move the scrollbar animation logic to animation controllers. #
Total comments: 2
Patch Set 3 : merge conflicts resolved and unittest added. #Patch Set 4 : Unittest passes asan build bot. #
Messages
Total messages: 44 (33 generated)
Description was changed from ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. BUG=636393 ========== to ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. BUG=636393 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ==========
Description was changed from ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. BUG=636393 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ========== to ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ==========
The CQ bit was checked by sahel@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 commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_precise_blink_rel on master.tryserver.blink (JOB_TIMED_OUT, no build URL)
sahel@chromium.org changed reviewers: + bokan@chromium.org
Also, this will need a test. https://codereview.chromium.org/2422353002/diff/1/cc/trees/layer_tree_host_im... File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2422353002/diff/1/cc/trees/layer_tree_host_im... cc/trees/layer_tree_host_impl.cc:3262: ScrollbarAnimationControllerForId( Hmm...too much of this logic is starting to creep into LayerTreeHostImpl. scroll_layer_id_when_mouse_near_scrollbar_ should always be the same layer as scroll_layer_id_when_mouse_over_scrollbar_ (if the latter is non-null), right? I think we could keep just one variable, scroll_layer_id_mouse_currently_over and send the distance from scrollbar to the controller on each mouse move. The controller could then keep all this state and make the transitions internally.
sahel@chromium.org changed reviewers: + chaopeng@chromium.org
The CQ bit was checked by sahel@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...
I haven't added a new test, yet. https://codereview.chromium.org/2422353002/diff/1/cc/trees/layer_tree_host_im... File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2422353002/diff/1/cc/trees/layer_tree_host_im... cc/trees/layer_tree_host_impl.cc:3262: ScrollbarAnimationControllerForId( On 2016/10/18 15:44:35, bokan wrote: > Hmm...too much of this logic is starting to creep into LayerTreeHostImpl. > scroll_layer_id_when_mouse_near_scrollbar_ should always be the same layer as > scroll_layer_id_when_mouse_over_scrollbar_ (if the latter is non-null), right? I > think we could keep just one variable, scroll_layer_id_mouse_currently_over and > send the distance from scrollbar to the controller on each mouse move. The > controller could then keep all this state and make the transitions internally. Done.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Thanks, this looks great. Just needs a test. https://codereview.chromium.org/2422353002/diff/20001/cc/trees/layer_tree_hos... File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2422353002/diff/20001/cc/trees/layer_tree_hos... cc/trees/layer_tree_host_impl.cc:3271: old_animation_controller->DidMouseMoveOffScrollbar(); Seems to me DidMouseMoveOffScrollbar should really be called, didMouseLeave. Please rename.
Patchset #3 (id:40001) has been deleted
The CQ bit was checked by sahel@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 commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
Description was changed from ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ========== to ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=656657, 636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ==========
Patchset #3 (id:60001) has been deleted
Patchset #3 (id:80001) has been deleted
The CQ bit was checked by sahel@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 commit-bot@chromium.org
Dry run: 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_...)
The CQ bit was checked by sahel@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...
Description was changed from ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=656657, 636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ========== to ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ==========
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The added unittest fails without this cl. https://codereview.chromium.org/2422353002/diff/20001/cc/trees/layer_tree_hos... File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2422353002/diff/20001/cc/trees/layer_tree_hos... cc/trees/layer_tree_host_impl.cc:3271: old_animation_controller->DidMouseMoveOffScrollbar(); On 2016/10/20 14:58:08, bokan wrote: > Seems to me DidMouseMoveOffScrollbar should really be called, didMouseLeave. > Please rename. Done.
sahel@chromium.org changed reviewers: + aelias@chromium.org
aelias@chromium.org: Please review changes in
lgtm
On 2016/10/24 21:54:14, aelias wrote: > lgtm lgtm
The CQ bit was checked by sahel@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ========== to ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ==========
Message was sent while issue was closed.
Committed patchset #4 (id:120001)
Message was sent while issue was closed.
Description was changed from ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel ========== to ========== Iframe/div MD scrollbars get idle when mouse leaves the nested elements. If the scrollbar of a nested element is not captured, it should get back to idle state when mouse leaves the element. Now, the scrollbar gets stuck in hover state if mouse leaves the nested element while being near the scrollbar. With this change the non-captured scrollbars always get back to idle state when the mouse leaves the div/iframe. BUG=636393 TEST=LayerTreeHostImplTest.LayerTreeHostImplTestScrollbarStates CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel Committed: https://crrev.com/db2d55e87ca8e0a8c74d29f479ec498053495e6f Cr-Commit-Position: refs/heads/master@{#427343} ==========
Message was sent while issue was closed.
Patchset 4 (id:??) landed as https://crrev.com/db2d55e87ca8e0a8c74d29f479ec498053495e6f Cr-Commit-Position: refs/heads/master@{#427343} |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
