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
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
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
- We were not getting callbacks for sessions created under work profile.
- We did not pass in the user when creating the workspace item infos.
- Added check for if app is installed before adding item to workspace
to prevent any stale promise icons. This seems to happen when uninstalling
and then immediately reinstalling an application.
Bug: 141556707
Change-Id: Ie0320f3ede70b6c7543cb60c3b95a2fe398eecb5
Merged-In: I2db2d8da449c37eb248a59fbc9e7b517f50855c1
Existing clients now use the SingleAxisSwipeDetector subclass. A
followup CL will add BothAxesSwipeDetector, whose first client will be
the quick switch from home controller.
Bug: 126596417
Change-Id: I54c71088cfe99ff28cdc719a1eb7a7d06ac95d2d
Merged-In: I54c71088cfe99ff28cdc719a1eb7a7d06ac95d2d
If attachTo happens before the view is attached to window,
ViewOnDrawExecutor hooks to the tree observer twice (second time from
onViewAttachedToWindow). It only unhooks once.
Since tree observer is global, this leads to leaking the activity, and
besides, all old activities getting the events from the tree observer.
Bug: 139137636
Change-Id: Ie2641b8f3614545052fe34ad6588b070c3b82a33
(cherry picked from commit ebb5c75344)
We build an IDP with no grid size override values. This
allows us to reference the profile measurements so that we can have a
consistent UI for areas that the grid size change should not affect.
Bug: 124967099
Change-Id: I6235862c95800d8f31dbf2de1d12b1fcf4dbd850
Previously we correctly set mSubtractDisplacement when re-catching
during the SETTLING state, but then immediately overrode it to be
+/-mTouchSlop.
Test: Swipe up to all apps, catch it by touching down during the
transition, ensure there's no jump when starting to move again.
Change-Id: I5d543e8a8b027b68bafb26b752e70862f6ae0777
This prevents the case where original icon is in hidden state, then the
view gets recycled and since there is no listener/end runnable the original
icon is left in the hidden state.
Bug: 142120338
Change-Id: I5f5bfa2a7c70d10869f51edf5c40bbaab1ef93bc
- Don't set current page to running task when applying load plan,
if we are already settling on a new task to launch.
- When starting a new task, finish to the running app if that's
the task being started (should not happen with above change)
- When disabling free scroll mode, don't snap to a page if we're
already on it. This was setting mNextPage so the first check
was falsing.
Bug: 142068081
Change-Id: I5b392d9726a81c51718d2f94eee6cd4f78b61f69
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I9a3b0f67ee874b5ec4ad67f41a46ec7876d19082
Merged-in: I9a3b0f67ee874b5ec4ad67f41a46ec7876d19082
press on an app icon.
When user long press on an app icon, the a11y focus event wasn't
properly triggered on the container of deep shortcut, which is why
there wasn't any talkback feedback after long press on an app icon.
Bug: 140786694
Change-Id: Ib38db147faa5a163985f1ed74beec04c588b022c
It is now organized as follows:
- private constants
- public constants
- private final fields
- private variable fields
- constructors
- public methods
- private methods
- public interface/abstract class
This is intended to be a functional no-op.
Bug: 141939911
Change-Id: Iad5a9b3b73b35641f8a4f1d52ada6adef3825c47
Tested: Built and sanity checked manually.
Not doing this seems to have caused flakes.
Bug: 141770616
Change-Id: Ia9caf20e4a2d93298adf4249ca815ad79bced802
Merged-in: Ia9caf20e4a2d93298adf4249ca815ad79bced802
We change the way we parse the install queue; so this seems to be a rare case
when trying to flush an install queue from an old apk with a launcher apk
with the new parsing changes.
Bug: 140935140
Change-Id: I14db4c3f70ed2e1bc5ad31dec7e6473cd6f8f13c