We manually dispatch cancel when returning to the previous state in
onDragEnd(), but could end in a bad state if getting a second,
external cancel (e.g. by pressing home). Thus, we restore the
onCancelListener after manually dispatching cancel.
Bug: 79258868
Change-Id: Idc4c33cede1d8af1829a4a744b9348d379bcf8f7
Previously, user-controlled animations weren't properly being canceled when a
non-user-controlled animation started, e.g. when hitting home. Thus, we could
end in the wrong or inconsistent state because the user-controlled animation's
end runnable was still used. Now we add a cleanup callback for when we reset
the user-controlled animation for one that isn't user-controlled.
Also fixed a couple typos.
Tests (easier with animation durations extended):
- Swipe up and hit home before reaching overview -> land on home
- Go to overview, swipe down slightly (before threshold to go to workspace)
and let go -> return to overview without flash (recents was resetting)
- Swipe up, press home while swiping -> goes home, stops responding to drag
- Start dismissing task and hit home before it finishes (or while dragging)
-> goes home, stops responding to drag
Bug: 78249220
Change-Id: If11d8999e3fadba38c987b25af67cd2304cd859b
Some animation might be running from a previous orientation, which can cuase property changes
to get skipped.
Bug: 77848165
Bug: 77774619
Change-Id: I3e198196192746abdd72a1970ff2ef407bf4aff9
recents view and related classes.
This allows the common animation to be used in fallback activity.
Bug: 75979063
Change-Id: I2b5bf5e66406621305b9a076793434f9c5cecdfd
> When on home time, swiping up goes to all_apps, and swiping down goes to normal
> When on a recents tile, swiping up the tile dismisses it, swiping down launches it
> When on a recents tile, swiping up on the hotseat opens allApps.
Change-Id: I59f8c02f5c5d9cb88c0585a083fbc33d33b1c806
> Currently swipe only works from NORMAL and ALL_APPS state
> All interpolation is spread linearly
On pausing the drag for some time, the workspace moves to overview state,
and all other transitions interpolate linearly from there over the
remaining swipe range
Change-Id: Ic79f9d0f446c9bfff11e4af4d31ddc1c86c45ab2
> Separating all-apps transtions control and vertical shift touch handling
> Creating separate spring handler for search box (to avoid adding and removing spring)
> Driving all-apps vertical shift using state AnimatorSet
Bug: 67678570
Change-Id: I3b6a4d1f43275a5f485b399444742b6b9a8c4bb9