This is to ensure the task thumbnail is captured in the correct
orientation, rather than waiting until after the task pauses
which might be after the device rotates to portrait.
Also update the state to wait until screenshot is captured
before finishing the transition to home.
Change-Id: Ie42778d527c382ff80a2edf5d2a5dc7490e4e5ff
When onRecycle() is called, the current task view is detached from the
parent, causing getParent() to return null.
Test: manual
Fixes: 132269977
Change-Id: I80826c2348cb23363c0482d3fd12283a7c90a689
Previously, we were incorrectly using the thumbnail insets, which
were insufficient for fullscreen tasks, and ignoring rotated tasks
entirely. Now we check what part of the thumbnail is actually
clipped (e.g. based on the scale we apply to get it to fit in the
same width as all the other tasks), and fill that out when setting
the fullscreen progress on each task.
Test:
- Quick switch (from home and from apps) to:
- "Normal" apps such as Calculator in portrait and landscape
- Immersive portrait apps such as Elder Scrolls: Blades
- Immersive landscape apps such as Stardew Valley
- Swipe up from an app with the above cases in the adjacent task,
ensure the thumbnail gets clipped from fullscreen to its final
position in recents
- Do the above tests from landscape launcher as well
Bug: 130020567
Change-Id: I6f6b7f0ee134d464b3704990db9e1d3a01e6de0b
This fixes the issue where overview doesn't come in from offscreen
the first time you enter overview from home.
Test:
- Force stop launcher, quick switch from home
- Force stop launcher, swipe up and hold
Change-Id: Ia4dbd36267008bc199cff088833979606238d3eb
* Tracks either the top or bottom of the rect for the fling/spring in the
Y direction.
- This allows us to have the icon always animate downwards.
* Scales the spring velocity for the Y component.
Bug: 124510042
Change-Id: I47571f906c8aa1beca4dd703d67d013ab6a1161f
This replaces all other chips containers and causes minimal
layout overhead: It is strictly within the task itself and
causes zero jank or space issues.
Screenshots:
https://drive.google.com/corp/drive/folders/1-3ZNCJtWc9_cgmP1nNd8U1yvpCr6GGoq
Test: manual
Change-Id: I5e22a34c4dc1ac3e73c4d5c913befc2360cb388e
This reverts commit d849ef084c.
Reason for revert: not needed
I was too eager to merge this CL. It turns out all I need is these
three constants and doesn't actually need the aidl change.
public static final int MAIN_COLOR_LIGHT = 0xffdadce0;
public static final int MAIN_COLOR_DARK = 0xff202124;
public static final int MAIN_COLOR_REGULAR = 0xff000000;
Change-Id: Iafd539a06455ba0878a6d3750f3c7194f8919fbf
Bug:129421797
Test: Flashed to QP1A.190508.001, installed launcher with change.
Observed both home and overview predictions were as expected.
Change-Id: I127d489eae382f4cee75afdd6d615d6d7a8227ee
Currently, we cannot support the split-screen mode on the secondary
display. To prevent confused,disallowing split-screen request on
non-primary display tasks first.
Bug: 118266305
Test: 1. Use the ActivityViewTest to launch an application on virtual display.
2. Check if the split-screen button exist on recent app.
Change-Id: Ifa6d70a1920aa4f33d260e37a3737e102949114e
We would like to assume a correct up-to-date layout for Go recents
before the remote animation begins to ensure correctness of the app to
overview transition and allow for animating all the newly laid out task
views in sync.
We do this by checking if recents is the remote target we are animating
to and if so, checking if the view is ready. If it is not, then we
delay the remote animation until the layout is finished and everything
is attached.
Bug: 132112131
Fix: 132108983
Test: Run Recents Go, have no tasks in recents, open app, press
overview to go to recents
Test: Test on AOSP and NexusLauncher that animations to Launcher work as
before (both to recents and to home)
Change-Id: Id74d90cffc9fe5db1dbb5fe63b8819c7436fef21
This also enables the gesture when notification shade is down, as we do not have
a separate shate for that right now
Bug: 131847153
Change-Id: Ia1edaad197266fe01b5de7b2a6b46ca0ec6428bb
- Launcher always controlls sysui flags during quickstep gestures.
- If we passed window threshold (i.e. window isn't under system
bars), use same flags as home screen
- Else use sysui flags of the centermost TaskView
- Update sysui flags based on home animation progress as well
(otherwise we weren't applying home screen sysui flags until
the end of the animation if you ended the swipe before crossing
the window threshold).
- Update sysui flags for quick switch from home
- Specify that the activity controller animation is user-controlled
so we don't reapply state when re-setting it. This happens when
we get window insets, for instance, which we get when changing
sysui flags.
Bug: 131360249
Bug: 130020567
Change-Id: If82dbf75fe663fd690b816cdc1c4366cc2bf75b1
There were a couple cases where swiping up showed the adjacent task
even though we had set it as detached from the app window.
Test:
- Launch an app from all apps, swipe to home
- Force stop launcher, swipe to home
Bug: 129985827
Change-Id: Ib8a836e3cc467d44be601d81e3a7d04d6487c968
- Detect when start of the next task is interrupted with another gesture
(after finishing the recents animation but before the next task is
launched), and ensure that the next gesture is continued with another
other activity input consumer (but without actual remote animation
targets)
Bug: 128376812
Test: Introduce artificial delay in recents animation finish, try to quick
switch quickly
Change-Id: I057a0b2c4b7e8636467e37f5bbc8800b46c24345
Don't wait for drag slop before determining whether we are likely
to quick switch (xDisplacement > yDisplacement). One glaring issue
is that we only pass drag slop when swiping up, not sideways...
so to pass drag slop going sideways we actually had to pass touch
slop (24dp vs 10dp) and by that point the adjacent task was probably
visible if you swiped fast, and thus we faded it in. Now we only
look at raw displacement for purposes of determining whether we are
likelyToStartNewTask, which should be much more consistent.
Bug: 129985827
Change-Id: I31f8a9830681851093de2ce159da1a1dc4f7ef6a
It fails in the lab, and locally, when being run as a part of the whole
test suite.
Bug: 131772711
Change-Id: Ida5f384eb7115303e1315928822566150e1d852c
Test (all in multi window and non-multi window):
- Quick switch from home screen
- Quick switch from an app
- Swipe up from an app (slowly)
- Swipe down on a task (slowly)
Bug: 131689686
Change-Id: I69bf6dd1a34904cdf5ec7febea8f858012e2a0ac
Workspace and hotseat are drawn in rotated UI giving the impression that the
device is in Portrait, even though it is in landscape
Bug: 131360075
Change-Id: I29c4068af25fd4dcf7039b9a45886e864a137977
Test:
- Enter overview
- Swipe from right edge (no TaskView) goes back
- Swipe from left edge on top of TaskView scrolls to it
- Now swipe from either edge scrolls
- Swipe outside carousel goes back
Bug: 129297464
Change-Id: I0abd444a6e8d8daf79a824c94bdd05c01dfe19cb
Previously we only proxied if the end target was recents (now we do it
for home as well) and only proxied to the controllers, not to all views.
We still only proxy to controllers for touches in the nav bar, but
otherwise we dispatch touches through normal view hierarchy.
Tests while animating home:
- Swipe down for notifications
- Swipe up for all apps
- Long press icon or wallpaper for shortcuts
- Tap a folder to open it
- Tap an icon to launch it (currently no animation plays, looking into
it separately)
Bug: 131775822
Change-Id: I705b7a657b6d17bc0e24ed4fb44ecfb0f319e942
We did this already for mCurrentShift, which is used for all animations
except home animation. Now we do it for the home animation as well to
ensure we are properly cleaned up for the next interaction.
Test: Swipe up to home and double tap nav region before animation
finishes. Before, this would return to the app you swiped up from but
was in a broken state where subsequent swipes were ignored. Now we
jump to the home screen and remain there.
Bug: 130802487
Change-Id: I98a2e71a1791f5580451c94a35af98da193ff12f
Previously this was controlled by TaskThumbnailView. Having TaskView
handle it allows it to update its outline provider to match the
thumbnail when setting fullscreen progress.
Bug: 129883568
Change-Id: I067fcdd31676af4d4792d18eaaac031c2ac0b18a
When you switch to RTL when an app is open, we try to use the BubbleTextView
that is no longer attached on the animation back to home. This causes the
item location to return the wrong values (since now the view doesn't have
valid padding/width we can use). In this case, we'll use the fallback
animation.
Bug: 131242470
Change-Id: I0ce27ee10bd6402cc6b2065813b034fc04592622
- The flag may be inaccurate, revert to the activity manager check
for now
Bug: 131552865
Test: Manual
Change-Id: If7c00ba7a1cbb726dcd65993451e82d76778fd4b