> Only creating task overlay for one view at a time
> Fixing setOverviewStateEnabled called twice when going
between OVERVIEW and BACKGROUND state
Bug: 132815672
Bug: 122345781
Change-Id: I51ac5b0744af87194eca08e07fd2c75b8fa0d3e0
Normally, if all apps is open, and an app installs/uninstalls/updates,
All Apps will immediately reflect this.
However, depending on something subtle in the intensity of the swipe
gesture that brought All Apps, all apps will freeze, and won't update.
This frozen state will go away after scrolling in all apps, iteration
with an icon and, generally, any tap interaction with All Apps.
Otherwise, it will stay until it's closed and opened again via a gesture
with a different pattern.
The reason is in the code that freezes All Apps updates during user
interactions with all apps.
For example, during scrolls. Or while the user holds an icon, expecting
to see a context menu; in this case an update would cause the menu to
not appear, which is somewhat annoying.
The motivation to add this code was to solve a category of lab-only
flakes when a context menu couldn't open because the lab device was busy
with post-flash activities.
The code incorrectly assumed that after ACTION_DOWN, we are guaranteed
to get either UP or CANCEL, which is wrong.
It's after *consumed* ACTION_DOWN that we'll get these events.
The fix still solves the user's and tests' problems that the code was
supposed to solve.
Bug: 134442147
Change-Id: I9db74a33ecf93b1dc6bc69df301f7f542dea2a40
The process will crash anyway when loading sharedPreference. So
we do not need any extra check to cause the same crash.
Bug: 134094839
Change-Id: Icfd4406ff601d6b9a75bd95ddcecb9869f7e7fa2
=> The WorkspaceTouchListener was relying on receiving TOUCH_DOWN in order to
clear its state. This is not guaranteed; ie. when touches begin above
children of the workspace (icons or widgets)
=> Any invocation of the Workspace long press menu would trigger this issue
and it would persist until a touch went directly onto the Workspace in a
location without any children.
Bug 132298752
Change-Id: Id8617baaa1ce59dc84758a7c82049329323b04cc
When ending in recents, we reapply the state - therefore, it's important
to make sure we are in OverviewState before onSwipeUpComplete(). This is
done by mLauncherTransitionController, which sets OverviewState on end.
We already force mLauncherTransitionController to end before calling
onSwipeUpComplete(), but in this case we were calling cancel() and
setting mLauncherTransitionController = null, which meant we could never
call end() on it. Instead, we should always call end() if we set it to
null.
Also ensure mLauncherTransitionController is created even if the gesture
is completed, if an existing controller isn't already running. This can
happen if you swipe up quickly enough that we get onGestureEnd before
launcher is drawn, and in that case we still want the launcher component
to animate once its ready. This is even more important for 2-button
mode, because again, we rely on mLauncherTransitionController to set the
state to OverviewState before we reapply it.
Finally, clarified some methods by renaming "swipeUp" to
"swipeUpToRecents".
Bug: 132757019
Change-Id: Ieb24a4f36a39780e5d64d7bc312791608db474d1
State UI depends on visible content, which can change due to predicitons.
Reapplying the state whenever then happens ensures that we are in correct
start UI
Change-Id: I9f195a92b747fda8a5b217dc960f230d7a695255
This can happen if we get onApplyWindowInsets() after onGestureEnded().
In that case, we can get into some bad states because the running
animation is overwritten and thus can't be canceled.
Bug: 134096917
Bug: 133806285
Change-Id: Ic517d68a46a4446ca382445df1ba62c26e8243ad
In disabled states, dragLayer should not receive touch anyway. Removing
the additional check to avoid user getting stuck.
Bug: 134062513
Change-Id: Id31a31254377e9a737ecd6e9905e66c54e4eb740
* Mostly value changes.
* Added a way to round the corners during swipe up to home animation.
Bug: 123900446
Change-Id: Id61d241d919ba51ced0633585e36b7d93efe30b0