After we finish the recents animation, the current task id should be correctly reset so that when the task is launched from Overview later, it goes through the flow of starting a new task instead of finishing recents animation to app. A typical example of this is (1) user swipes up from app to Overview (2) user taps on QSB (3) user goes back to Overview and launch the most recent task.
Fixes: 143377934
Test: Turn on live tile, swipe up to Overview. Tap on QSB, see QSB launching correctly. Go back to Overview, tap on the most recent app tile, make sure the app is launched correctly.
Change-Id: Ibc1c8249d9b79584495bf0cec2ae6f7debfa658f
Some background on what was happening:
- When mEndRect.isEmpty(), we set it to (0, 0 , width, height)
- We called mEndRect.setEmpty() in animateClose(), but override
mEndRect if the reveal animation set the outline bounds.
- But the reveal animation doesn't set the outline bounds until
after the arrow animation (40ms) finishes, i.e. the arrow scales
up for 40ms then we clip to outline and start revealing the popup
- Thus, if you started a drag before the arrow animation finished,
we called mEndRect.setEmpty(), which made the close animation start
from the full popup size even though it was previously invisible.
To fix this, we clip the popup to its (empty) outline while the
arrow animates in, and then we can always start from wherever the
outline currently is when we close the popup.
Test:
- Set animation duration to 10x
- Long press an icon, and start dragging before the arrow scale
animation finishes
- The popup never shows, whereas before it jumped to full size
Bug: 143639898
Change-Id: I284dd06a23e0e9c3faf066a0083ac13bac88ebcc
Test:
- Long press an icon to open the popup
- Long press the same icon while the popup is open
Previously, the dot would reappear (when the original popup finished closing).
Now, the dot stays hidden, as it should since a popup is showing.
Bug: 143639898
Change-Id: Ia0bdb626e02f4ad9ba12c27d94fea054b4afe50e
App open animation gets cancelled because of screenshot cleanup (launcher is stopped). We need window manager support to allow them to go parallel (b/143774568). As a workaround, we can either (1) delay launching the next task until recents animation is properly cancelled (2) finish the recents animation before launching the next task. Performance is the same, so go with (2) since it's a cleaner solution
Fixes: 143773683
Test: Swipe up to Overview from app, launch another task in Overview. See everything animate smoothly.
Change-Id: Iafd3f6f529fba32c1113b766c033e5932f19f4f3
Supports filling hotseat with predicted apps, pinning of predicted apps
and manages replacing predicted apps with user drag.
Bug:142753423
Test:Manual
Change-Id: I224294f9353a64c46d28c22263a72332a79fddf4
Caused by mainline updates where Files app session commit is broadcasted.
Launcher workaround is to not auto-add system apps to the workspace.
Bug: 139663018
Change-Id: Id61532bd0df2cd5f3bdfc28a3616ba5e5ff3d18a
am: 6547f1a937 -s ours
am skip reason: change_id I261653118aff289b329ec2a7ca6e52f100f7835a with SHA1 d386d7da7c is in history
Change-Id: Ib84ab2e8af21ec7116c204db3bffc0a97de8468d
Previously it was using OtherActivityInputConsumer, which got things in a
pretty weird state (e.g. most recent app would appear in the center as if
it was the active app when you started Quick Switching, etc.).
By default (toggleable by a feature flag), OverviewWithoutFocusInputConsumer
is used because Assistant doesn't seem to respect the CLOSE_SYSTEM_DIALOGS
broadcast, at least in half-shelf mode. In this case, the Home intent is
sent on swipe up, or you can dismiss it with the back gesture or by tapping
above the half shelf.
The new feature flag ASSISTANT_GIVES_LAUNCHER_FOCUS routes touches through
OverviewInputConsumer. As opposed to OverviewWithoutFocusInputConsumer,
this allows Quick Step to work while Assistant is running. Additional logic
is added to dismiss the Assistant when appropriate. Note that the dismissal
happens atomically, so it's not completely fluid with the other animations.
As mentioned above, this is disabled by default because Assistant doesn't
currently respect CLOSE_SYSTEM_DIALOGS.
Demo with the flag enabled (and Assistant respecting CLOSE_SYSTEM_DIALOGS):
https://drive.google.com/open?id=1W5jGpn_TEC-KjrYwQtaBT3pzxG_5tC4W
Bug: 139661510
Change-Id: I261653118aff289b329ec2a7ca6e52f100f7835a
Merged-In: I261653118aff289b329ec2a7ca6e52f100f7835a
Previously it was using OtherActivityInputConsumer, which got things in a
pretty weird state (e.g. most recent app would appear in the center as if
it was the active app when you started Quick Switching, etc.).
By default (toggleable by a feature flag), OverviewWithoutFocusInputConsumer
is used because Assistant doesn't seem to respect the CLOSE_SYSTEM_DIALOGS
broadcast, at least in half-shelf mode. In this case, the Home intent is
sent on swipe up, or you can dismiss it with the back gesture or by tapping
above the half shelf.
The new feature flag ASSISTANT_GIVES_LAUNCHER_FOCUS routes touches through
OverviewInputConsumer. As opposed to OverviewWithoutFocusInputConsumer,
this allows Quick Step to work while Assistant is running. Additional logic
is added to dismiss the Assistant when appropriate. Note that the dismissal
happens atomically, so it's not completely fluid with the other animations.
As mentioned above, this is disabled by default because Assistant doesn't
currently respect CLOSE_SYSTEM_DIALOGS.
Demo with the flag enabled (and Assistant respecting CLOSE_SYSTEM_DIALOGS):
https://drive.google.com/open?id=1W5jGpn_TEC-KjrYwQtaBT3pzxG_5tC4W
Bug: 139661510
Change-Id: I261653118aff289b329ec2a7ca6e52f100f7835a
Tested: Manually used quick switch after invoking Assistant from home screen.
This will allow subclassing BitmapInfo to support custom icon/dynamic
icons which can be loaded on the background thread instead of going
through IconFactory which runs on UiThread
Change-Id: Ieced6e91330bdff1b505826d097a8df711dfe967
am: 4fba129548 -s ours
am skip reason: change_id I6f659f61e70630236cabf7a00af39ae2c2c7264c with SHA1 6d14b39680 is in history
Change-Id: If226236f4eca357faac66cf0a5d28155dd3cfcb5
am: 457ee2c4c6 -s ours
am skip reason: change_id I6f659f61e70630236cabf7a00af39ae2c2c7264c with SHA1 6d14b39680 is in history
Change-Id: Ic39c5dd3688ba0ca87345fa4b4c9bd97a944383c
am: fb7d9a4e2f -s ours
am skip reason: change_id I6f659f61e70630236cabf7a00af39ae2c2c7264c with SHA1 6d14b39680 is in history
Change-Id: I94b81482d201f879e62cc5877cefd03786b95125
am: 8021732ca7 -s ours
am skip reason: change_id I6f659f61e70630236cabf7a00af39ae2c2c7264c with SHA1 6d14b39680 is in history
Change-Id: I28526dc1d4f2066ab142a8ea9211c823d736bd9c
am: 329fca4550 -s ours
am skip reason: change_id I0178a52088dd4150d7ba054983697ea63a00d9a8 with SHA1 052c881415 is in history
Change-Id: I87595769e6898817946e374743bd662751830709
- Bake overview/home component into the gesture state (it should never
change mid-gesture), this allows us to remove OverviewComponentObserver
refs from the handlers
- Move nav bar position into DeviceState
- Remove passing RecentsModel into the handlers, it already partially
references it statically
Bug: 141886704
Change-Id: I62f9138651cbe1fb984b57b96e4212ebaa1ffb5d