Commit Graph

323 Commits

Author SHA1 Message Date
Jagrut Desai 269fb15e97 Merge "Desktop Mode Taskbar Recreate Animation" into main 2025-02-24 16:00:48 -08:00
Jagrut Desai 8b2e5eff9b Desktop Mode Taskbar Recreate Animation
This Cl includes
       - addition of entry/exit callback methods in DesktopVisibilityController.
       - taskbar manager now listens to desktop mode changes.
       - TaskbarBackrgroundRedererer can now individually animation backgrounds for transient and persistent taskbars
       - new channel for taskbar icon alpha added to TaskbarViewController
       - new animated float to handle background alpha while we are recreating taskbar with animation.

Solution:

we use the callabck we get from DekstopVisibilty for entry/exit to first change logic of when we are considered inDesktopMode. Upon entry/exit we notify display controller for info change.
we also at notify taskbar manager who is now a listener to the desktop mode change and start the recreate process. TaskbarManager first animates existing taskbar out of user view and then follows the original recreate flow.

Test: Presubmit
Bug: 343882478
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Ib827564cacd194f499e7d9b1965e2bb13e3548ab
2025-02-24 11:59:53 -08:00
Jagrut Desai e49214080f Fix Taskbar Edu accessibility anmimation
This cl include: Allows user to click on lottie animation views to play and pause animations. If user have choosen to remove animations we will honor it and not play the animation from begaining.

Test: Manual, Presubmit
Bug: 378980835
Flag: EXEMPT bugfix
Change-Id: Ieaaf771bc307837f042f6e59d8f02fefb2e8286a
2025-02-24 09:36:22 -08:00
Fengjiang Li c926dd5be2 [Memory Leak] Attempt to fix leak caused by onEndCallback created for open app animation not running
Fix: 397690719
Flag: NONE - release code
Test: presubmit
Change-Id: Icf36b744f21f50b7182c81437ef29b5886c2d43d
2025-02-19 18:00:41 -08:00
Gustav Sennton 57ce690d4e Pass TransitionInfo from onTasksAppeared() to TransformParams
Pass the TransitionInfo of the merging recents-transition through to
TransformParams to allow setting the corner radius of desktop tasks to
zero during the second part of a recents transition.

Bug: 378657004
Flag: com.android.window.flags.enable_desktop_recents_transitions_corners_bugfix
Test: swipe up from fullscreen app to overview, then tap desktop tile

Change-Id: I08f87aa1b9a2feca9e9f8bed2c55279e0ddc1edb
2025-02-12 10:19:14 +00:00
Gustav Sennton b15df95186 Merge "Add CUJ_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE to launcher side" into main 2025-01-28 10:32:41 -08:00
Gustav Sennton 1c84b90fe2 Add CUJ_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE to launcher side
Move the CUJ to where the actual animation is taking place, so we can
target the correct surface/leash.

Bug: 374214290
Flag: NONE jank logging
Test: manual

Change-Id: Iccb30ff7ceee84b68428606575e1b8588eeb8aa9
2025-01-28 15:22:01 +00:00
Gustav Sennton 1cce85f197 Remove old Desktop transitions flags usages
Bug: 369763947
Test: n/a
Flag: EXEMPT flags removal
Change-Id: Ie4cd157bb94477db83a1995f976c2057f78902e4
2025-01-27 14:44:22 +00:00
Johannes Gallmann c8fd3f23fe Play workspace reveal animation for predictive back-to-home
Bug: 382453424
Test: Manual, i.e. tested back-to-home and back-to-allapps animation on phones, tablets and foldables, including interruptions.
Flag: com.android.launcher3.predictive_back_to_home_polish
Change-Id: I092a74ab2340828e18067ca15c7019c44d30f40b
2024-12-12 14:18:03 +00:00
Johannes Gallmann 6b1272ad9f Revert "Play workspace reveal animation for predictive back-to-home"
This reverts commit 09603bfb39.

Reason for revert: Launcher icons are sometimes not visible during the back-to-home animation when immediately swiping back after opening the app.

Change-Id: I13869cf755160986e323365a460f6ebe128008a9
2024-12-11 06:05:39 -08:00
Johannes Gallmann 09603bfb39 Play workspace reveal animation for predictive back-to-home
Bug: 382453424
Test: Manual, i.e. tested back-to-home and back-to-allapps animation on phones, tablets and foldables, including interruptions.
Flag: EXEMPT bugfix
Change-Id: Iece001b6b9edd9ca7a909e3ccbe8ebdff2e71d9f
2024-12-10 12:42:12 +00:00
Gustav Sennton 68648283a8 Use bugfix flags for desktop mode transitions (exit, applaunch, alttab)
The transitions changes are bug fixes / polish, so use bugfix flags
for these changes.
An existing non-bugfix flag cannot be changed into a bugfix flag, so
instead we create new flags with the bugfix type.

Bug: 380224768
Bug: 380225486
Bug: 380224832
Test: manual - disable main flags, use bugfix flags
Flag: com.android.window.flags.enable_desktop_windowing_enter_transition_bugfix
Change-Id: I1c9ea635a362db741f4a632e6360aee87c12750e
2024-11-28 12:32:34 +00:00
Johannes Gallmann 0610c625e0 Only register Launcher back-callback when ROLE_HOME is held.
When using a 3P Launcher, i.e. when the ROLE_HOME is not held by QuickstepLauncher, there should be no back callback registered with SystemUI.

Bug: 374882166
Flag: EXEMPT bugfix
Test: Manual, i.e. verified back-callback registration updates in SystemUI and also verified that back-to-home navigations in Nova Launcher are responsive.
Change-Id: I03187f80a4c3c893a6529f0a22613f6fdfe7b7b3
2024-11-22 13:49:00 +00:00
Jagrut Desai a9095ca0c8 Merge "Fix launching app animation from launcher all apps." into main 2024-11-15 22:43:39 +00:00
Jagrut Desai 596594c684 Fix launching app animation from launcher all apps.
This cl includes
	- making pinned taskbar animate slide in/out animation from bottom of screen.
        - no icon aligment with hotseat when taksbar is pinned

The solution
	- upon state change applied on TaskbarLauncherStateController. offset taskbar background and icons to bottom of screeen and animate with slide in/out effects.

Test: manual, presubmit
Bug: 314279101
Flag: EXEMPT bugfix

Change-Id: Ife336ebd57eb2f60c2bc33ed6a4527c42111808f
2024-11-14 15:51:50 -08:00
Gustav Sennton 8e4cae1258 Change fallback closing animators for Desktop Mode.
The main changes are:
1. the amount to move the window horizontally (much less for Desktop
Mode), and
2. the timing for when the alpha animation is applied - we remove the
   25ms delay for freeform windows.

Bug: 378675987
Test: manual
Flag: com.android.window.flags.enable_desktop_windowing_exit_transitions
Change-Id: Ieeb6b827eee2e6314ea9c79213cdf401f48d3c85
2024-11-14 16:26:07 +00:00
Luca Zuccarini 75883dd89e Merge "Make workspace and hotseat scale animations interruptible." into main 2024-09-30 09:42:59 +00:00
Luca Zuccarini 2831d1eaf7 Make workspace and hotseat scale animations interruptible.
This affects app launches and returns to home. When launching
immediately after returning to home (before the return animation is
complete), the two animations could overlap, causing the two property
setters to conflict.

Bug: 367591368
Flag: com.android.launcher3.coordinate_workspace_scale
Test: tested with flag off and on, see before and after in the bug
Change-Id: Ie1483fa0bf589caee315ae298e9e68ca361709d8
2024-09-27 13:30:09 +00:00
mpodolian dfb48214ea Update placement of the hotseat according to the bubble bar location.
Update the hotseat and Qsb placement according to the 3 nav buttons bar.

Test: Manual.
Set navigation mode to 3 buttons.
On launcher home screen move the bubble bar from one side to another.
Observe that the Hotseat and Qsb moving together with the navigation
bar.
Once moved the bubble bar, expand the bubble bar and collapse it.
Observe how the Hotseat is stashing and un-stashing.
After bubble bar changes position hit the recent apps button, observe
the transition.
On launcher home screen start application with the hotseat icon and exit
opened application. Observe that flying icon comes back to the correct
position in the hotseat.
Video with the above scenarios:
http://recall/-/gx8ASgewUeUS3QYohfrd1J/blTYrKopTyufOcRoPuVpYK
Bug: 346381754
Flag: com.android.wm.shell.enable_bubble_bar_in_persistent_task_bar

Change-Id: Ic8c6acdffbbb111cbe4f3fd6bc60195578d7035d
2024-09-26 19:04:01 -07:00
Sunny Goyal 5ee3d98641 Cleaning up some enabled features
Flag: EXEMPT LEGACY
		CONTINUOUS_VIEW_TREE_CAPTURE
		ALL_APPS_GONE_VISIBILITY
		ENABLE_BACK_SWIPE_HOME_ANIMATION
		ENABLE_DYNAMIC_TASKBAR_THRESHOLDS
		PREEMPTIVE_UNFOLD_ANIMATION_START
		ENABLE_NEW_GESTURE_NAV_TUTORIAL
		ENABLE_ENFORCED_ROUNDED_CORNERS
		ENABLE_TRACKPAD_GESTURE
		ENABLE_KEYBOARD_QUICK_SWITCH
		ENABLE_KEYBOARD_TASKBAR_TOGGLE
		ENABLE_ALL_APPS_RV_PREINFLATION
Test: Presubmit
Bug: 270395171, 291651514, 270393426, 294252473,
     270397209, 270396257, 270393258, 271010401,
     270396844, 281726846, 288161355

Change-Id: I6ef1e12dfc2203a4cca8e91aa291485f1ff24c42
2024-09-12 15:12:08 -07:00
Sunny Goyal b55d9ca407 Fixing back animation for container views
> Looking up views during back instead of holding the reference
  This allows back animation even if Launcher restarts
> Fixing back animation not working with progressive back
> Fixing container animation overriding Launcher cookie used be gestureNav

Bug: 365866488
Test: Verified manually by enabling flag
Flag: com.android.launcher3.enable_container_return_animations
Change-Id: Ic235b238cca6a31e9a5502200ff6b07c72b4e4d7
2024-09-12 00:51:07 -07:00
Sunny Goyal 8f8932b0f8 Merge "Adding open/close animartion when launching app-info target" into main 2024-09-11 20:31:34 +00:00
Sunny Goyal 65342edc89 Removing obsolete flags
Flag: EXEMPT legacy ENABLE_PARAMETRIZE_REORDER, KEYGUARD_ANIMATION, ENABLE_SCRIM_FOR_APP_LAUNCH
Bug: 289420844
Bug: 270390904
Bug: 270393276
Test: Verified manually
Change-Id: I0eb166168100419fdf4d264f7ccddeeba86524b7
2024-09-10 21:24:47 +00:00
Sunny Goyal cb98fb26b8 Adding open/close animartion when launching app-info target
Bug: 356914468
Test: Verified manually
Flag: EXEMPT bugfix
Change-Id: I3a4e48363728153a96c75466824fb03de44c0ad9
2024-09-10 13:35:46 -07:00
Sunny Goyal f158286c34 Adding more properties in LaunchCookie, instead of just itemId
This allows better matching of items who do not have a fixed id

Bug: 364363493
Flag: EXEMPT bug fix
Test: Manual- Verified app launch and back animation
Change-Id: I4f9deba89399b89974686b64226b99f91a3d46be
2024-09-09 12:11:36 -07:00
Winson Chung d159e61166 5/ Remove unused recents code
- The shell transit flag is already hardcoded to true in Launcher
  so we can remove the non-shell transit paths
- The minimized split was from legacy splitscreen where launcher would
  show in a minimized state, which is no longer the case

Flag: EXEMPT bugfix
Bug: 359608026
Test: atest NexusLauncherTests
Change-Id: Idea46fc065485233b9e508dae3ebc4ee87c29ba6
Signed-off-by: Winson Chung <winsonc@google.com>
2024-08-29 23:17:23 +00:00
Jon Miranda 50a7279ae6 Revert "Synchronize the app launch and taskbar stash animations."
This reverts commit cde962dcb7.

Fixes: 355666644
Reason for revert: Memory leak b/355666644

Change-Id: I2eee00d2d8d65e1e1805ad76fafc7caab8626715
2024-08-13 00:41:01 +00:00
Robin Lee 004849d2ec Skip launcher return for custom task transitions
Overriding the task exit transition requires a permission that indicates the exiting task already knows more than the launcher about what its exit is supposed to look like, so we
will let it play the animation it likes instead of the default return-to-launcher one.

Change-Id: I8f4b7292ae0863d378ec6319816e1b9cc7735c24
Test: atest transition-hotlaunch-phone
Flag: EXEMPT bugfix
Bug: 350712843
2024-07-24 20:49:39 +00:00
Jon Miranda 6d5ab854d1 Merge "Synchronize the app launch and taskbar stash animations." into main 2024-07-19 00:26:33 +00:00
Jon Miranda cde962dcb7 Synchronize the app launch and taskbar stash animations.
Introduce FLAG_IGNORE_IN_APP to prevent taskbar from stashing prematurely
due to HomeTransitionListener signal.

Bug: 345768019
Fixes: 319162553
Test: Launch an app, note the two animations are synced
      Verified by locally introducing a startDelay (since otherwise it is hard to tell)
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Change-Id: Ibb64e0321f33cf81e337fc7c1b2c3edfb23e6ba4
2024-07-19 00:26:13 +00:00
Johannes Gallmann 93af1db6a3 Fix CUJ_LAUNCHER_APP_CLOSE_TO_HOME Cuj for predictive back to home
CUJ_LAUNCHER_APP_CLOSE_TO_HOME was broken because in the non-fallback case, the anim on which addCujInstrumentation was called on was empty.

Bug: 300078127
Flag: com.android.window.flags.predictive_back_system_anims
Test: Manual, i.e. verifying that CUJ_LAUNCHER_APP_CLOSE_TO_HOME shows up properly in perfetto trace with the fix applied in the predictive back case
Change-Id: I4a1130bd7c4622c057db054d829f662a16443799
2024-07-16 13:42:03 +02:00
Luca Zuccarini 52545edb41 Add return animations to Toast search results.
This only applies to targets that already use the Animation library for
launch animations.

Bug: 336719605
Bug: 298089923
Flag: com.android.launcher3.enable_container_return_animations
Flag: com.android.systemui.shared.return_animation_framework_library
Test: tested manually with flag on and off
Change-Id: Ib824e78fa8b1b226b32d23d8325f06b496ba5deb
2024-06-20 10:25:57 +00:00
Luca Zuccarini 0f6668d011 Miscellaneous polish for new home animation.
1. Update the starting window velocity when coming from 3-button nav or
   predictive back

Before we used an arbitrary fixed velocity which goes down to basically
0 with the old implementation, but caused a noticeable jump up in the
new one when using predictive back. Now we just pass 0, since the
predictive back framework doesn't give us the actual velocity.

2. Add the scaling home reveal to the targetless (not going back to a
   specific app icon or widget) animation and 3-button nav

Bug: 298089923
Fix: 343143876
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Test: manually tested with flag on and off
Change-Id: Ied3630a51862731fad044b68f76a45dc87f2e17b
2024-06-05 13:21:46 +00:00
samcackett 76331b6c17 Add metric logging for fake landscape usage
- Reuse existing TaskSwitcherContainer for Overview metric logging
- Log current orientation state for Overview when interacting with
gestures or via three button nav
- Log current orientation state on each phone rotation

Bug: 332870519
Test: Manual
Flag: NA
Change-Id: Ia10cf1acb809432175daab55151998f0d77362f9
2024-05-15 09:42:08 +01:00
Jordan Demeulenaere 5512003c0d Delay TransitionAnimator.onAnimationEnd by one frame (2/4)
Bug: 330672236
Test: atest ActivityTransitionAnimatorTest
Test: atest DialogTransitionAnimatorTest
Flag: N/A
Change-Id: I81e85df79256d013f6c3ef5cb58a5d96c0c7deec
2024-05-08 16:28:53 +02:00
Sunny Goyal 89931316a2 Moving various nav-bar configs out of feature flags
Bug: 332588958
Test: Presubmit
Flag: None
Change-Id: Ia4dc5b69bcf4d461e3444b9e37bb7334bb74aae4
2024-04-08 16:54:04 -07:00
Luca Zuccarini c9cbc9d5a1 Introduce a new Home animation for workspace and the outgoing task.
The values are currently the same for all display and orientation
configurations, but they might change before launch.

There are a couple known imperfections:
* Swiping out of a hotseat app with very low velocity doesn't look
  great
* Sometimes, if the window movement reaches its final location faster
  than the background is done scaling, there is a small snap in icon
  position

Bug: 298089923
Flag: ACONFIG com.android.launcher3.enable_scaling_reveal_home_animation DISABLED
Test: verified with the flag on and off

Change-Id: Id54c7f0a76f62108d8b92a3b5e78634fff64dbef
2024-03-14 10:48:02 +00:00
Federico Baron f9aa2a4a47 Merge "Remove logspam for resolved bug" into main 2024-03-08 16:29:17 +00:00
fbaron 7e5d855886 Remove logspam for resolved bug
b/318394698 was fixed so we can now remove these logs.

Fix: 321837497
Test: N/A
Flag: NONE
Change-Id: Ifc8b18238778f6aa2c0ad1be5df627c07cbaf1d8
2024-03-07 11:11:36 -08:00
Sunny Goyal f584b32811 Using fractions in MultiValueUpdateListener instead of absolute durations
This ensures that any global animation scale applies properly

Bug: 327645429
Flag: NONE
Test: Manual
Change-Id: I12205429dca5a87208fa9964b3307fb718af4fd0
2024-03-04 09:15:11 -08:00
Luca Zuccarini 0547036143 Merge "Move remote animation utils to the Animation lib." into main 2024-02-27 13:53:59 +00:00
Johannes Gallmann c71b48c658 Transfer coordinate into new Rect instead of in-place
Other parts of the animation rely on currentRectF to remain stable, therefore we shouldn't modify the RectF object in place.

Bug: 323628523
Flag: NONE
Test: Manual, i.e. verifying that widget close (and app close) animation animates correctly regardless of device orientation
Change-Id: I48e9ed047b956db654192eef39e5d94fbac53553
2024-02-23 12:30:46 +01:00
Luca Zuccarini df33f361b0 Move remote animation utils to the Animation lib.
This is so that they can be used within the Animation lib itself, while
remaining available to all current users, since the SysUI shared lib
also depends on Animation lib.

Bug: 323863002
Flag: NA
Test: still builds, tests still pass, manually tested areas that depend
on these utils.

Change-Id: I10de17b51c05054efe957ed1073a1cbe6baf05c5
2024-02-21 15:03:51 +00:00
Luca Zuccarini 9fd2b31005 Merge "Rename a few more animations classes to cover transitions in general." into main 2024-02-08 16:34:22 +00:00
Luca Zuccarini 9ac91ffa63 Merge "Rename ActivityLaunchAnimator to cover transitions in general." into main 2024-02-08 10:15:43 +00:00
Luca Zuccarini a2dd8a2629 Rename a few more animations classes to cover transitions in general.
Soon they will be used for both launches and returns, so these names
are more accurate.

Bug: 323863002
Flag: NA
Test: still builds (no functionality change)
Change-Id: I618780f0416a466a6672a2e694cb3e3ffd3f1396
2024-02-06 17:06:26 +00:00
Luca Zuccarini 1fcfe364ba Rename ActivityLaunchAnimator to cover transitions in general.
Soon it will be used for both launches and returns, so this name is
more accurate.

Bug: 323863002
Flag: NA
Test: still builds (no functionality change)
Change-Id: Iaff2589401af24c6e9f604b3d7fa11e819fc941a
2024-02-06 14:07:44 +00:00
Johannes Gallmann 8a631d09d0 Fix crash for predictive back to home fallback animation
Bug: 323046568
Flag: ACONFIG com.android.window.flags.predictive_back_system_anims TEAMFOOD
Test: Manual, i.e. verify no crash for predictive back to home fallback
animation
Change-Id: I8bd5ddb3f97376a9d9bc4bdf1e3a55e7f53a192f

Change-Id: I1f53b3fafb8d508a0e0b67dda16eae36191f197c
2024-02-01 12:40:37 +01:00
Sunny Goyal 4b67d7f47f Adding an abort listener in app launches to clear state
Bug: 318394698
Test: Verified on device
Flag: None
Change-Id: Ib6108782429abb5dfd9c4e42246e4a93ddf10f55
2024-01-26 17:16:31 +00:00
Johannes Gallmann c9be821856 Merge "Fix TaplTestsQuickstep.testPressback failure (2)" into main 2024-01-26 08:48:41 +00:00