Skip bounds change if app list view state changes during drag
Running animation while still in drag would cause the app list view change to kHalf/kPeeking or fullscreen state, in addition to changing the page shown in the app list view. Further more, moving mouse (provided that the drag was not ended in the meantime) would cause the view to jump back to the drag position. To avoid this, do not change the app list view bounds to the preferred bounds for the new state is drag is still in progress (the bounds will be updated once the drag ends). For this to be possible, when ending drag, the new drag state should be set before the new state. For code that requires the new state to be known during the state change, introduce ending_drag_ flag, that's set while state change caused by drag ending is in progress. (Currently, this is only used to determine whether animation to peeking state should layout app list at each frame) BUG=1004390 Change-Id: I080b47843576dec8b6fa8cecae4370c7959d9c38 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1807064Reviewed-by:Alex Newcomer <newcomer@chromium.org> Commit-Queue: Toni Baržić <tbarzic@chromium.org> Cr-Commit-Position: refs/heads/master@{#697112}
Showing
Please register or sign in to comment