Restart running task if another task was started but not appeared
If we just finish the controller to resume the running task like
we normally would, the delayed task will appear on top when it's
ready. Instead, we need to start the original task in this case.
- Move mLastStartedTaskId to GestureState, shared between swipe
handlers when continuing the gesture.
- Update logic to change LAST_TASK to NEW_TASK if a task was
started (but not appeared) during the same gesture; likewise,
only change NEW_TASK to LAST_TASK if no task was started.
- Finish the controller when successfully starting the task
that already appeared, since we won't get onTaskAppeared().
Bug: 156132424
Change-Id: I1e9af297840745ab3d5e90214425f10a2616d90a
4 files changed