* Remove Launcher state manipulation from `DesktopVisibilityController`
* Remove Taskbar state updates for desktop mode in
`LauncherTaskbarUIController`
* Update app widget animation for Home transision
* Update `RemoteTargetGluer` remote targets setup for Dekstop mode
Bug: 309014605
Flag: ACONFIG com.android.window.flags.enable_desktop_windowing_wallpaper_activity DEVELOPMENT
Test: manual
Change-Id: Ie2a7ad214a4d4e7e642d1236f2375ba6d17f3781
Unlike normal activity, recents would receive key event from input
consumer instead of go throught ViewRootImpl, so when adapt to
predictive back API, recents should try to handle back key when receive
key event.
Flag: ACONFIG launcher.enable_predictive_back_gesture ENABLED
Bug: 333428882
Test: switch to 3-button mode, go to live tile, verify back key can
dismiss recents.
Change-Id: Ibe6d9b2475a0b89b12dc4b34251a2a92926b5a4e
Added the reason for creating the overlay. Updated
SwipePipToHomeAnimator constructor also due to the fact the source rect
hint from Builder class is never empty.
Bug: 330488822
Test: manually, follow the reproduce path
Flag: NA
Change-Id: Id98ce799d7c96fff3279c0df0fa49084a49d563a
This reverts commit a80997d9eb.
Bug: 324670265
Test: Locally tested this, as well as ran it through post-submit via go/abdt with the fix.
Flag: NA
Reason for revert: Root-caused the issue with this, and will push the fix along with this revert.
Change-Id: I4bda53d94dfdb865883fef6ceec9dacd0b87f015
- This aligns with other app-level state that is read at runtime
Bug: 323112914
Test: atest NexusLauncherTests
Change-Id: I1e29583d1c0302646718473c8958d604c1a202a5
It was only assigned when using gesture navigation.
When using non-gesture navigation, the calculation below in
ActivityMetricsLogger will be (uptime - 0) which could be several
hours or days.
mSourceEventDelayMs = (int) (TimeUnit.NANOSECONDS.toMillis(
launchingState.mStartUptimeNs) - sourceInfo.eventTimeMs);
Because the start time was set right after GestureState is created,
it can be simply set as the creation time of GestureState.
So non-gesture navigation can provide the timestamp when handling
OverviewCommandHelper.TYPE_TOGGLE.
Bug: 206872204
Test: Use 3-button navigation to enter recent.
The value of LatencyTracker should not be unexpected large.
Change-Id: Ie661222822912e287d1ac295ccaf49e2086d909e
* End the recents animation and then relaunch as if
from scratch
* We explicitly ignore the anim for end of recents animation
since that will cause the taskbar to quickly show and stash
again, and we know in this case that we'll quickly be launching
right back into an app
Test: Tested w/ live tile + non live,
fullscreen + app pairs
Bug: 316485863
Change-Id: I6ae8cccc01401935bf96fba8a154216e6b1ad701
(cherry picked from commit 637274ebc9)
Merged-In: I6ae8cccc01401935bf96fba8a154216e6b1ad701
* This prevents launcher underneath from peaking through
while the split apps are loading
Bug: 299640096
Test: Launched from recents, home and all apps
Doesn't seem to affect small screen since recents scrolls
away and the scrim is only left
Change-Id: I32e394a0bc361489473ee657161c8f3bcbf1e422
(cherry picked from commit cdaabc6199)
Merged-In: I32e394a0bc361489473ee657161c8f3bcbf1e422
This CL changes the TaskShortcutFactory for SCREENSHOT and MODAL so that the associated menu options ("Screenshot" and "Select") don't show up on split tasks. These actions are not fully supported on splitscreen tiles (they will only work on one of the two apps), so we disable them.
Bug: 327434215
Flag: N/A
Test: Manual
Change-Id: I121a9c28fa7570f10e13be2de6489182e3362cfc
(cherry picked from commit 6a60c3b113)
Merged-In: I121a9c28fa7570f10e13be2de6489182e3362cfc
This CL adds the ability for an app pair icon to update its title string when package changes are detected. It also reorganizes some code in the app pairs classes for readability.
Fixes: 316051810
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Manual
Change-Id: I833e4f9766b7da8c0a3a5fb4b9fc050d8897437e
(cherry picked from commit 24284467b5)
Merged-In: I833e4f9766b7da8c0a3a5fb4b9fc050d8897437e
Previously, the following would cause the All Apps panel to appear
in NORMAL state:
1. Start dragging to all apps
2. During the drag, something sets Launcher to NORMAL
3. Release finger -> animation to all apps completes, but state
is still NORMAL
Side effects of this:
- On large screens, All Apps draws its background on Launcher's
ScrimView only if the current state is All Apps. So in this
case, the apps just floated above the workspace.
- On handheld, touches are handled by workspace even though you
can see the All Apps list. So e.g. if you swipe down, the
notification shade appears rather than all apps panel hiding
(although it seems this touch issue was addressed separately).
I'm not sure if this is the main/only case of this state mismatch
happening, but verified with local async state changes that this
could in theory happen. We haven't been able to organically repro
the bug reliably. That being said, it feels plausible that a well
timed screen lock during the all apps transition could also hit
this case.
Demo videos with hard-coded state change to NORMAL 2 seconds after
you start swiping up to all apps (note I release my finger at the
end of each video):
https://drive.google.com/drive/folders/1ul8ep9N2M5oc6ZSbf_ZHQwp9IwTpz7GB?resourcekey=0-4LAufl0rkvtjvgZC0L-eMQ&usp=drive_link
Bug: 239394946
Bug: 331600490
Test: Manual with local async launcher state changes
Flag: NA
Change-Id: I6364dbde8aea67f5d1c525edf57ed7eb26096cf9
This change makes the current fragment load on configuration changes for
the gesture navigation tutorial. Previously, the old fragment would be recreated causing inconsistencies when rotating the screen. Not marking a flag as this change is for both the previous gesture tutorial and the current one.
Fix: 317162126
Test: Run the tutorial and rotate the screen after each step. The
tutorial should progress like normal.
Flag: N/A
Change-Id: I09c40006dd0ef6e9e78fa44e36962a678918420a
(cherry picked from commit c028cc7699)
Large screen devices in landscape mode and devices that have mostly a
square aspect ratio are undergoing a redesign in Setup wizard that makes
most screens two-pane. As part of this redesign, the back button is
aligned in this change. This change doesn't use a flag because the Setup
Wizard change is not flagged.
Fixes: 323778778
Fixes: 328017929
Test: Run Setup Wizard and see if the back button aligns with the Skip
button in two pane screens.
Flag: N/A
Change-Id: I22680f40c0ddf7cd03ab1da69406eb14184b0174
Merged-In: I22680f40c0ddf7cd03ab1da69406eb14184b0174
Large screen devices in landscape mode and devices that have mostly a
square aspect ratio are undergoing a redesign in Setup wizard that makes
most screens two-pane. As part of this redesign, the back button is
aligned in this change. This change doesn't use a flag because the Setup
Wizard change is not flagged.
Fixes: 323778778
Fixes: 328017929
Test: Run Setup Wizard and see if the back button aligns with the Skip
button in two pane screens.
Flag: N/A
Change-Id: I22680f40c0ddf7cd03ab1da69406eb14184b0174
Revert submission 26911513-revert-26414135-RecentsViewContainer-MEROZZOKJQ
Reason for revert: Fix for issue has been found and will be included in this revert.
Reverted changes: /q/submissionid:26911513-revert-26414135-RecentsViewContainer-MEROZZOKJQ
Change-Id: I517e7d2fc0d82d250a6ed40862dd31c194d0a302
This change is a rewrite of the new bubble animation. Previously we chained the handle animation and the bubble animation so that they run sequentially.
That caused the transition from the handle to the bubble to be jarring.
We now use a single spring animation along the y axis that starts from the position of the handle to the position of where the bubble will end up.
The animation is split into 3 logical parts, where initially the bubble animates out, then the bubble starts animating in, and the last part is the overshoot of the spring animation, which is used to mark the bubble fully visible and ensure that from that point on, the bubble is only moving but doesn't change in scale or transparency as the bounce effect is playing.
Using a single animation path allows for a smooth transition from the handle to the bubble view.
Demo: http://recall/-/bJtug1HhvXkkeA4MQvIaiP/hHNUBdNJPiWi9gMbqy45UJ
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Bug: 280605846
Test: atest BubbleBarViewAnimatorTest
Change-Id: Ic1d3244574b8500d4aad2e9c718e61c1c34bd82a
* This prevents launcher underneath from peaking through
while the split apps are loading
Bug: 299640096
Test: Launched from recents, home and all apps
Doesn't seem to affect small screen since recents scrolls
away and the scrim is only left
Change-Id: I32e394a0bc361489473ee657161c8f3bcbf1e422
This CL substantially refactors folders to be able to take contents of type AppPairInfo. App pairs can now be moved in and out of folders, and launch from folders.
This CL contains only logic and model changes; animation and style changes (for dropping items into folders, color changes to app pair surfaces, etc.) will be in a following CL. Another CL (hopefully) will contain tests. I'm planning to submit them together, but this patch should also be able to stand alone with no issues (except janky transitions).
Bug: 315731527
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Manual, more to follow in another CL.
Change-Id: I73732fcaefbdc61bf6e02a5be365962b8bbc3e41
(cherry picked from commit a596f589c4)
Merged-In: I73732fcaefbdc61bf6e02a5be365962b8bbc3e41
- We don't need to worry about if it's in Overview. Only overview has task menus, so if there is no task menu, we place it at the top.
Fixes: 332465429
Test: Launch stage split using keyboard shortcuts with all apps open. Make sure it's above all apps.
Change-Id: Ic950d2897fe80ef407038dd840b86fc92d6d6287
Revert submission 26414135-RecentsViewContainer
Reason for revert: Probable culprit for b/333767026. Will be verifying through ABTD for confirmation and before submitting the revert.
Reverted changes: /q/submissionid:26414135-RecentsViewContainer
Change-Id: I25775cd6531355f1dc042ddb7a8d442ee0b36e58