Commit Graph

11894 Commits

Author SHA1 Message Date
Ivan Tkachenko
e993f92719 Merge "Desktop windowing wallpaper" into main 2024-04-16 15:20:38 +00:00
Ivan Tkachenko
cd1dced953 Desktop windowing wallpaper
* 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
2024-04-16 10:59:30 +00:00
Wei Sheng Shih
347cc489bb Merge "Attemp handle back key when enable onBackInvoked callback." into main 2024-04-16 07:40:10 +00:00
wilsonshih
70beba044e Attemp handle back key when enable onBackInvoked callback.
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
2024-04-16 04:03:00 +00:00
Stefan Andonian
0d2cc9e87c Merge "Revert^2 "Remove Unused parts of LauncherPrefs causing cyclical dependency."" into main 2024-04-16 02:42:04 +00:00
Vinit Nayak
e8609736f4 Merge "Revert "Launch split tasks at beginning of animation instead of the end"" into main 2024-04-16 01:11:05 +00:00
Hongwei Wang
59fc94684a Add debugging information on PiP content overlay
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
2024-04-15 17:02:21 -07:00
Saumya Prakash
ca987a3dff Merge "Fix incorrect fragment in gesture tutorial when rotating the screen" into 24D1-dev 2024-04-15 21:22:26 +00:00
Vinit Nayak
fb092a9a6c Revert "Launch split tasks at beginning of animation instead of the end"
This reverts commit 26c11f2c49.

Reason for revert: b/333937249

Change-Id: Ide851596f5be7cea28df18dc27701b3cc0104bf1
2024-04-15 20:39:00 +00:00
Sunny Goyal
2eeee631aa Moving developer settings to xml overrides instead of code swap
Bug: 330920490
Test: Verified on device
Flag: None
Change-Id: Ibba96a57c8eb7347399ab32577a0e395ae886e91
2024-04-15 11:29:22 -07:00
Stefan Andonian
1a626d2d05 Revert^2 "Remove Unused parts of LauncherPrefs causing cyclical dependency."
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
2024-04-15 18:28:25 +00:00
Andy Wickham
e0b23658d8 Merge "Cancel manual animation if LauncherState changes during drag." into main 2024-04-15 18:14:45 +00:00
Holly Sun
ad7ac2943b [omni] Make AssistStateManager SafeCloseable.
Saw presubmit error: https://paste.googleplex.com/6266943744507904#l=76
which is thrown at https://source.corp.google.com/h/googleplex-android/platform/superproject/main/+/main:packages/apps/Launcher3/src/com/android/launcher3/util/MainThreadInitializedObject.java;l=147-148;drc=1ce67a612220e7c9bd576d867cddf0fb74ccb866

Bug: 311356563
Bug: 330444720
Flag: legacy CUSTOM_LPH_THRESHOLDS disabled
Test: manual
Change-Id: I5fd28161756f10f0ec893f38c0abd51621fd36bc
2024-04-15 10:53:43 -07:00
Lynn Yeh
f99f04608b Merge "Close the KQS view when touching the gesture nav region" into 24D1-dev 2024-04-15 14:36:52 +00:00
David Lin
cb37425710 Merge "Do not report finish in mergeAnimation..." into 24D1-dev 2024-04-15 10:08:18 +00:00
Gustav Sennton
e8c920967a Merge "Implement IRecentTasksListener.onRunningTaskChanged()" into main 2024-04-14 21:30:00 +00:00
Winson Chung
6a6de2dfc3 Migrate WorkspaceItemInfo non-resizeable flag to runtime status flag
- This aligns with other app-level state that is read at runtime

Bug: 323112914
Test: atest NexusLauncherTests
Change-Id: I1e29583d1c0302646718473c8958d604c1a202a5
2024-04-14 06:20:54 +00:00
Schneider Victor-tulias
a9721fd344 Merge "Add debug logs to AbsSwipeUpHandler" into main 2024-04-12 20:39:51 +00:00
Sunny Goyal
4396a935c2 Merge "Using resource overrides for PluginManager instead of code-swap" into main 2024-04-12 20:29:36 +00:00
Luca Zuccarini
a0e2a878f4 Fix a bug where the status bar scrim doesn't animate.
Bug: 298089923
Flag: ACONFIG com.android.launcher3.enable_scaling_reveal_home_animation DISABLED
Test: manual
Change-Id: I8b624cf3e0b42572c122d04e2e7df6e7a6106b89
2024-04-12 18:55:49 +00:00
Sunny Goyal
4a22ed81ea Using resource overrides for PluginManager instead of code-swap
Bug: 330920490
Test: Presubmit
Flag: None
Change-Id: Ib1cd50f95873928b9ce104e8e95d21f1dca9c6e3
2024-04-12 11:38:32 -07:00
Schneider Victor-tulias
9622927c8d Add debug logs to AbsSwipeUpHandler
Investigating b/332386996

Flag: N/A
Bug: 332386996
Test: TaplTestsQuickstep#testQuickSwitchFromApp
Change-Id: Ic5245416df624b722819a3dcf1008ca0196d3161
2024-04-12 13:34:31 -04:00
Riddle Hsu
90ed0f9b32 Ensure that the recents start time is non-zero
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
2024-04-12 11:10:07 +00:00
Treehugger Robot
028e1fcd9d Merge "Launch AppPair live tile when not visible" into 24D1-dev 2024-04-12 03:59:27 +00:00
Treehugger Robot
8119d72903 Merge "Add placeholder divider view when starting split tasks" into 24D1-dev 2024-04-12 03:48:46 +00:00
Vinit Nayak
95a7ca485e Launch AppPair live tile when not visible
* 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
2024-04-12 03:41:20 +00:00
Vinit Nayak
32700f81ec Add placeholder divider view when starting split tasks
* 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
2024-04-12 03:24:46 +00:00
Shan Huang
05b6d1fb7e Generate progress events from app process for app animations.
Bug: 261654570
Flag: None
Test: atest BackNavigationControllerTest
Test: atest OnBackInvokedCallbackGestureTest
Test: atest BackAnimationControllerTest
Test: atest BackTouchTrackerTest
Test: atest WindowOnBackInvokedDispatcherTest

Change-Id: I075c099d59012825583fd9beda29a33d00f4d077
2024-04-11 19:16:01 -07:00
Saumya Prakash
f44e8e5feb Merge "Adjust where the back button is rendered for new SUW requirements." into 24D1-dev 2024-04-12 00:22:02 +00:00
Jeremy Sim
1ece740e7a Prevent menu items from showing on split tasks
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
2024-04-11 23:41:42 +00:00
Jeremy Sim
ee1fdb4abc Fix bug where app pair title was not updating with language
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
2024-04-11 23:38:41 +00:00
Andy Wickham
22dee942b5 Cancel manual animation if LauncherState changes during drag.
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
2024-04-11 16:00:34 -07:00
Saumya Prakash
92b20d89a6 Fix incorrect fragment in gesture tutorial when rotating the screen
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)
2024-04-11 22:04:32 +00:00
Saumya Prakash
afc6cfcd3b Adjust where the back button is rendered for new SUW requirements.
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
2024-04-11 21:25:49 +00:00
Vinit Nayak
559aeb2c45 Merge "Allow app pairs in folders" into 24D1-dev 2024-04-11 20:55:33 +00:00
Andreas Agvard
98e57de7a8 Merge "Removes recovery" into 24D1-dev 2024-04-11 19:37:47 +00:00
Saumya Prakash
5bb103246b Merge "Adjust where the back button is rendered for new SUW requirements." into main 2024-04-11 19:05:52 +00:00
Gustav Sennton
2744acfbf4 Implement IRecentTasksListener.onRunningTaskChanged()
Bug: 332504528
Test: N/A
Flag: NA
Change-Id: I7c98eb524bb7544a715f5b8226d3c28d05f72913
2024-04-11 16:58:42 +00:00
Saumya Prakash
da26e19dd8 Adjust where the back button is rendered for new SUW requirements.
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
2024-04-11 16:53:41 +00:00
Randy Pfohl
819b835519 Revert "Revert "abtracting Activity from recentsView through rec..."
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
2024-04-11 08:58:08 -07:00
Liran Binyamin
e79120af38 Update new bubble animation
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
2024-04-11 11:51:10 -04:00
Luca Zuccarini
926a10a3b0 Create a stubbed IRemoteTransition implementation.
Bug: 323863002
Flag: NA
Test: NA, new method is unused (still builds)
Change-Id: Ibc4187f469e41b2db91bef368c710ffbdcd33faf
2024-04-11 09:15:41 +00:00
Vinit Nayak
20c0b2f647 Merge "Add placeholder divider view when starting split tasks" into main 2024-04-11 05:10:35 +00:00
Vinit Nayak
cdaabc6199 Add placeholder divider view when starting split tasks
* 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
2024-04-11 05:09:49 +00:00
Tracy Zhou
f5299f3168 Merge "Move AbstractFloatingView for stage split layering above all apps" into main 2024-04-11 05:05:01 +00:00
Jeremy Sim
9109e43f02 Allow app pairs in folders
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
2024-04-11 03:51:53 +00:00
Tracy Zhou
3158bf7e43 Move AbstractFloatingView for stage split layering above all apps
- 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
2024-04-10 19:42:50 -07:00
Priyanka Advani
1d6851083b Merge changes from topic "revert-26414135-RecentsViewContainer-MEROZZOKJQ" into main
* changes:
  Revert "abtracting Activity from recentsView through recentsview..."
  Revert "fixing tests to match new abstraction"
2024-04-10 23:58:09 +00:00
Sunny Goyal
63bf93cf65 Merge "Freezing legacy feature flags" into main 2024-04-10 22:29:24 +00:00
Priyanka Advani
3c71346147 Revert "abtracting Activity from recentsView through recentsview..."
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
2024-04-10 21:31:07 +00:00