Commit Graph

54 Commits

Author SHA1 Message Date
Sebastián Franco e1d31e5406 Revert "Revert "Moving DeviceProfile properties into DevicePrope..."
Revert submission 33716851-revert-33672643-DataDeviceProfile1-XHYRAPLEBK

Reason for revert: Error is fixed

Reverted changes: /q/submissionid:33716851-revert-33672643-DataDeviceProfile1-XHYRAPLEBK

Change-Id: Ib86824134955903c11e51e52dbfd6368aba1cd50
2025-05-23 14:08:11 -07:00
Priyanka Advani (xWF) 7705e92d93 Revert "Moving DeviceProfile properties into DeviceProperties da..."
Revert submission 33672643-DataDeviceProfile1

Reason for revert: Droidmonitor created revert due to b/419867875. Will be verifying through ABTD before submission.

Fix: 419867875

Reverted changes: /q/submissionid:33672643-DataDeviceProfile1

Change-Id: Icb66aefbbcee24e05806b2139923e1f2ea1c65e3
2025-05-23 13:53:04 -07:00
Sebastian Franco e1111e28c2 Moving DeviceProfile properties into DeviceProperties data class
Bug: 419264653
Flag: EXEMPT refactor
Test: DeviceProfileDumpTest
Test: All Image tests
Change-Id: I638f88cd76b926917965dbf9e70b5bdfff5971e0
2025-05-23 10:42:26 -07: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
minch 3695c7a64c Introduce hasTaskViews() to RecentsView
- This function is going to replace all the call sites that compares
  `getTaskVieCount()` and `0`.
- This is based on the fact that this count can not be a negative
  number.
- Introduce `getLastTaskView()` to get the last TaskView inside the
  RecentsView.

Flag: EXEMPT as no functionality changes
Bug: 379942019
Test: Manual
Change-Id: Iefb107d1aba61549a870f14c18e025c34b19a1b5
2024-12-11 23:44:16 +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
Vinit Nayak f92a34ff43 Clamp scrim progress for slow taskbar animation duration to max 1f
* Overview to workspace taskbar animation changed duration, and
with the new longer duration we no longer need to speed up the
scrim animation.
* The new longer duration was actually slowing down the scrim
interpolator

Fixes: 351911299
Test: Tested on small and large screen.
Tested w/ the flag off and there is a flicker, but that was
present without these changes as well
Flag: EXEMPT bugfix

Change-Id: I5dc219de541f3c2fb29a5a91a4770b0dece0259e
2024-07-11 15:48:25 -07: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
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
randypfohl 547d6fc472 abtracting Activity from recentsView through recentsviewcontainer and basecontainerinterface interfaces
This change will let us move from activity to other parent views for recent views.

Summary: In prep for new recentsview containers outside of activity we needed to decouple recentsview from activity and state.
This change will let us move from activity to other parent views for recent views.

Test: Built and tested locally for 1p and 3p launchers on tablet, and portrait modes. Verified working functionality.

Bug: 292269949

Flag: NONE

Change-Id: I5c72745f438d466362ece988c35a97d829e9c1b4
2024-04-10 09:14:28 -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
Vinit Nayak 9a3c48468b Update Launcher state anim duration for pinned & transient taskbar
* We were syncing the duration of the animation to be at most
that of the taskbar/hotseat animation but only for transient taskbar.
* Now we sync for transient and pinned

Fixes: 328052756
Test: Anim jank doesn't repro
Change-Id: I21f20cbc08a2018498dde3eff871929e5a5b7d7d
2024-03-11 16:53:39 -07:00
Alex Chau 4e6e1555c4 Refactored StateManager logs
- Make the log permanaent behind a DEBUG flag
- Logs are currently enabled with b/279059025 marked as the related bug

Bug: 279059025
Flag: None
Test: Manual
Change-Id: I60a75d73d40d00e7d42292f3d42cc9dd8c9b0825
2024-02-13 15:35:15 +00:00
Vinit Nayak 9efb2fb0a0 Sync split dismiss anim scrim fadee timing with taskbar to home anim duration
* We sync the scrim fade with the taskbar animation duration
to avoid any flickers fortaskbar icons disappearing before hotseat
icons show up.
* Layer wise taskbarIcons > scrim > hotseat
as taskbarIcons are translating into place, the frame where they fade out
the scrim should also fade out so they get seamlessly replaced by hotseat icons
* In our case the scrim was staying on too long so the scrim would show before
the hotseat, making it look like a flicker.
* Now we fade away the scrim sooner

Bug: 318747712
Test: Flicker no longer occurs
Flag: None
Change-Id: I779af1826ee55bfcbced3e972f14f5f299e9aaeb
2024-01-10 11:18:26 -08:00
Alex Chau 58a8c12713 Revert "Remove logs for bug investigation"
This reverts commit dad61a0098.

Reason for revert: b/279059025

Change-Id: Id8fcd1ddf67d7df0a23c81e3ddf3849c26c529bd
2023-11-23 19:01:16 +00:00
randypfohl dad61a0098 Remove logs for bug investigation
Test: built locally

Bug: 295069071

Change-Id: I88d41acb91ced876ab1f5a301e90ee5745119049
2023-09-19 14:13:58 -07:00
randypfohl a6b23d1402 Adding minimal logs to investigate overview floating bug
Test: reproed bugs locally and verified minimal logs will be useful.

Bug: 279059025
Bug: 291682082

Change-Id: I496adba0c7a797a26f5cc7beb42d5e38d895e122
2023-07-20 14:05:42 -07:00
Randy Pfohl 27e1e8eddc Merge "switching animation to screenshot to avoid visual jank" into udc-dev am: f5bec7dd30 am: c338164e7e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/23665476

Change-Id: Id99b6964e18cc7ec7daca9993ec2cffe5c8044b4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-13 06:50:06 +00:00
randypfohl d3cc664391 switching animation to screenshot to avoid visual jank
Test: built locally, recorded, and slow replayed it to verify no jank/visual anomalies visible.

Bug: 245750127
Change-Id: If7e72512d3303222f4d006a9e2a1639b2f86b1af
2023-06-12 18:28:57 -07:00
Kateryna Ivanova 7120373bbc Migrate Interpolators from Launcher3 to the public animation library
Test: atest
Bug: 271850966
Change-Id: Iba999f2e753764a37d35e508e707df02388432e9
2023-05-30 07:20:38 +00:00
Tony Wickham b4af207224 Merge "Restore old interpolators for Overview -> Home" into tm-qpr-dev 2023-03-14 01:36:24 +00:00
Tony Wickham 48119d4384 Restore old interpolators for Overview -> Home
This regressed due to b/236761067 updating the transition from Split
Select to Home (go to Overview, select an app to enter Split screen, but
then go home instead of picking the second app to split with). Kept the
new interpolators for OVERVIEW_SPLIT_SELECT to home, but restored the
old interpolators for OVERVIEW to home

Test: Manual, watch transition from Overview to Home, and Split Select
to Home
Fixes: 269348223

Change-Id: Ifc72f467881e235c24c35d86755dc5db675a9452
2023-03-06 19:46:59 +00:00
Jon Miranda 8f2b50fdeb Sync overview scroll so that it ends before/at same time as taskbar animation
Fixes: 267355260
Test: open overview, scroll to 'Clear all button', tap on blank space
Change-Id: Ia58683f7b167ff42443dda3d39368bf6aaa366e0
2023-03-03 13:34:55 -08:00
Saumya Prakash 9860628fcc Merge "Updated overview exit animation for 3 button navigation" into tm-qpr-dev 2022-10-05 22:02:09 +00:00
Jeremy Sim 86065b81e0 Fix animation slowdown when splitting from All Apps
This patch fixes a tablet bug related to splitting from All Apps. Splitting from AllApps was playing a very slow animation.

The bug occurred because there was no case set in QuickstepAtomicAnimationFactory for animating from the ALL_APPS state.

Fixed by setting the appropriate case in QuickstepAtomicAnimationFactory.

Fixes: 247053528
Test: Manual
Change-Id: I7391dc7049a6ff5a7f8c7e1ae8b69e29899248fa
2022-10-03 12:49:31 -07:00
Saumya Prakash 96bed75d9f Updated overview exit animation for 3 button navigation
Changed overview exit animation so that tiles don't slide off and only fade/scale in place for 3 button navigation. Previously, tiles would slide off when exiting for both gesture navigation and 3 button navigation. Now 3 button navigation exits with tiles staying in place.

Test: Manual
Fix: 245745939
Change-Id: I4144ed7e3ff29419df7fb13b6417ccc0a1f9dd45
2022-09-27 15:46:05 +00:00
Jeremy Sim ba7324e2b8 Update animations for phones: Overview > OverviewSplitSelect transition
This change updates the animation for initiating a split from the Overview screen on phones. Includes new timings and interpolators, and extends timing data classes related to SplitAnimationTimings.

Fixes a noticeable issue where the split animation appeared slow on phones.

Outstanding issues (fixes in progress):
- Repeated invocations of split on phones cause an erroneous animation to play. (b/249154347)
- Thumbnail corners do not match placeholder corners; the transition between the two is slightly janky. (b/236761794)
- Placeholder icons should be 72dp. (b/236761794)

Bug: 236761794
Test: Manual
Change-Id: Ibb97ef54498b0aa9556df531d8084799259c06e2
2022-09-27 11:45:02 -04:00
Jeremy Sim f3bfe4e156 Update animations for TM-QPR: Home > OverviewSplitSelect transition
This change updates the animation for initiating a split from the home screen. Also fixes a bug where icons were getting severely pixelated mid-animation.

Fixes: 236759099
Fixes: 244499770
Test: Manual
Change-Id: I56a76cbf286bd30540f3debdcb681d39c890a445
2022-09-19 22:02:54 -07:00
Jeremy Sim a4ba516797 Update animations for TM-QPR: OverviewSplitSelect > Confirmed transition
This change updates the animation for confirming a split.

Includes:
- New timings
- A new interface, SplitAnimationTimings, that centralizes timing values for splitscreen animations

Fixes: 241126570
Test: Manual
Change-Id: I61339964a7254618b368b17f00fda8f5efb53de4
2022-09-19 12:04:33 -07:00
Jeremy Sim 21a5b12b6f Update animations for TM-QPR: Overview > OverviewSplitSelect transition
This change updates the Overview > OverviewSplitSelect animation to the latest spec. This is a re-upload of a previous change, ag/19464657, but no longer will cause the b/241165022 issue.

Includes:
- New timings
- Task thumbnails slide in with an "overshoot" animation
- Icons fade out and fade in appropriately
- SplitInstructionsView has a new compound "unfold" animation

Bug: 236760307
Test: Manual on tablet. Made sure the b/241165022 issue is fixed.
Change-Id: Ia22f6b6d7b9474b782e693fae2320a34a2985b18
2022-09-14 18:06:05 -07:00
Jeremy Sim 2fe7dd7306 Revert "Update animations for TM-QPR: Overview > OverviewSplitSelect transition"
This reverts commit a50bb39048.

Reason for revert: Causes a P1 bug (b/241165022).

Fixes: 241165022
Bug: 236760307
Change-Id: Icc080d9a37e26d70d0f4cf846a4fd39df3b71625
2022-08-18 21:28:54 +00:00
Jeremy Sim a50bb39048 Update animations for TM-QPR: Overview > OverviewSplitSelect transition
The animation from Overview to OverviewSplitSelect is now updated to the latest spec. See bug for details.
- New timings
- Task thumbnails slide in with a new spring animation
- Icons fade out and fade in appropriately
- SplitInstructionsView has a new compound "unfold" animation

Bug: 236760307
Test: Manual on tablet and phone. Looks good on both true and fake orientations.
Change-Id: If98d4464aa51c876d79bee9672279992a2cf9026
2022-08-14 10:34:51 -07:00
Jeremy Sim e5ba8fa7a5 Update animations for TM-QPR: OverviewSplitSelect > Home transition
The animation from OverviewSplitSelect to Home is now updated to the latest spec. See bug for details.
- New timings
- FloatingTaskView now translates out, instead of fading
- FloatingTaskView and SplitInstructionsView now disappear concurrently with the rest of Overview, instead of afterward

Fixes: 236761067
Test: Manual on tablet and phone
Change-Id: Iaa1c804a60859232f331950098b67968cc187e82
2022-07-21 20:46:43 -07:00
Luca Zuccarini c703f3a3e0 Unify the source of truth for NORMAL <> ALL_APPS transitions.
Bug: 231682175
Bug: 234812580
Test: manual
Change-Id: I5b66735474915d7a59bda337f67df37ff397908a
2022-06-16 16:40:26 +00:00
Luca Zuccarini a36af25ab7 Remove workspace fade from ALL_APPS > NORMAL transition.
This applies to phones only for the one-off transition (Home gesture or
swipe back. See before and after videos in the bug.

Bug: 234359814
Test: manual
Change-Id: I8f4fc9ec40687b641a721bd28b32fcf50514861f
2022-05-31 15:46:28 +00:00
Luca Zuccarini ef006c7603 Update the NORMAL->ALL_APPS transition when tapping on QSB on phones.
- New interpolators
- New duration
- Removed workspace translation
- Removed overlapping fades -- are now sequential

See video in the bug.

Bug: 227745955
Test: manual
Change-Id: I19fa19a3806e963a04c5e694a52d3c1b921cf51f
2022-05-06 16:07:17 +00:00
Alex Chau f39cc126bf Tune AllApps dismiss animation
- Avoid overriding interpolator in AllAppsTransitionController.setStateWithAnimation as it's no longer needed and it'll wrongly override interpolator for ANIM_ALL_APPS_FADE
- Override ANIM_ALL_APPS_FADE to FINAL_FRAME in QuickstepAtomicAnimationFactory for tap deadzone to dismiss animation, also added EMPHASIZED_ACCELERATE for the dismiss animation
- Tuned dismiss animation across form factors to 300ms

Fix: 220336617
Test: manual
Change-Id: I4b3e827b503dcb1dd39f0bd99d4c1dd5ffdba0f3
2022-04-29 20:31:26 +01:00
Shikha Malhotra f78da1bae3 Review comments followup
These are review comments followup from ag/17399997

Bug: b/218187058
Test: manually test thet Launcher3 features work correctly
Change-Id: I9865a37c1ed663370dc28e7678994f3d961e3cd1
2022-04-12 14:33:07 +00:00
Sunny Goyal 4403d078a6 Moving NavigationMode to display controller
Navigation mode affects display properties like bounds and
most listeners already had a similar display listener. This
will remove race conditions when managing the two events.

Bug: 221961069
Test: Presubmit
Change-Id: If7a22e006e6b969ecddf075001066809aa72995c
2022-03-04 18:11:33 -08:00
Nicolo' Mazzucato 5765d42ada Fix jump in animation for hotseat while re-arranging icons
While re-arranging icons the hotseat remains in scale 1.0f, while the workspace reduces it's scale (as defined by SpringLoadedState.java). Previously, the code to aggregate animations was assuming hotseat and workspace always had the same scale.

MultiScaleProperty.get() was being used to set the starting value of the animation. Previously, it was returning the last aggregated value. However, this value was correct only for the workspace, but not for the hotseat. Returning the current view scale makes it always correct.

Bug: 220271046
Test: Dragged icons from hotseat to workspace, and verified animation didn't jump
Change-Id: Ic01776c1d8e3967624626ed7c44d194a06295790
2022-02-22 18:27:26 +01:00
Hyunyoung Song 153cd69d14 Apply scrim protection to atomic state transition ALLAPPS -> NORMAL
Bug: 209480401

Test: manual, video attached on the bug

TL;DR;; minimized the delta for sc-v2

Change-Id: If8c9281bb4366540b9a4ea10a9b363ce82d78daf
2022-01-04 21:55:14 -08:00
zakcohen 061548668d Fade overview action buttons faster in overview -> home
Spec says transition should take ~80ms, default for this transition is
~300ms, so clamp to a quarter of the range.

Bug: 191699762
Test: Local
Change-Id: I5ef6701eee0d25d5d9987e05cb53aee3e5e8e143
2021-06-21 15:18:16 -07:00
Tony Wickham 82d5a0681d Revert to overview coming from the side instead of bottom
Test: Visually checking all of these. As appropriate, repeat in 0, 2, 3
button modes, landscape/portrait/fake landscape, and 3P launcher
- Quick switch from home
- Home to overview
- Overview to home (swipe up)
- Overview to home (tap outside)
- Overview to home (back invocation)
- Quick switch from app
- Swipe up and hold from app
- Dismiss an app
- Empty recents
- Split select state to home
- Modal state to home
Fixes: 185411781

Change-Id: If00a22fee35c832a259bfc62808efbac5990ce2e
2021-05-14 16:06:44 -07:00
Tony Wickham e8b22d5e60 When overview appears from motion pause, come up from bottom
- Add vertical offset calculations to RecentsView (in addition to
  the existing horizontal offset which has been renamed accordingly).
- LauncherState#getOverviewScaleAndOffset() now supports both
  horizontal and vertical offsets and is specified such that overview
  appears and disappears from the bottom of the screen rather than the
  side.
- Quick switch still uses horizontal offset to come from the side.
- No longer need to scroll to page 0 when translating offscreen.
- Update interpolators for overview to home transition.
- Align 2 button mode transition with 0 button mode.

Test: Visually checking all of these. As appropriate, repeat in 0, 2, 3
button modes, landscape/portrait/fake landscape, and 3P launcher
- Quick switch from home
- Home to overview
- Overview to home (swipe up)
- Overview to home (tap outside)
- Overview to home (back invocation)
- Quick switch from app
- Swipe up and hold from app
- Dismiss an app
- Empty recents
- Split select state to home
- Modal state to home

Bug: 185411781
Change-Id: Ic59b877ccc0050afd7cd478778e9eeb60e2e47f7
2021-05-05 21:08:49 -07:00
Tony Wickham bb3460c01f Align home/back button from overview with tap outside
Set all interpolators in QuickstepAtomicAnimationFactory instead of
overriding some in OverviewToHomeAnim. This also means we can just
use a normal state transition instead of OverviewToHomeAnim when
tapping outside recents (i.e. startHome()).

Test: in all three gesture modes, the same animation is played
whether tapping outside recents, pressing home, or pressing back
Bug: 185411781

Change-Id: Ibe8734e8bd7041943eb76cac30d7cac26a90c73e
2021-05-05 21:08:21 -07:00
Zak Cohen fed2a01fe4 Fade out empty Overview message.
When Overview is empty, fade out its contents on transitions.


Bug: 185447800
Test: Local build and test on P5
Change-Id: I9a0cd649f2f7353e4a7af21a93fb18be36f616a8
2021-05-03 16:47:35 -07:00
Tony Wickham c5d168da82 In 2 button mode, animate to HINT_STATE instead of OVERVIEW directly
When reaching HINT_STATE_TWO_BUTTON, we goToState(OVERVIEW) with a
haptic, to keep the same feeling as before.

Test: Swipe up from home on nav bar, ensure it goes to overview
Bug: 175137718
Change-Id: Ib17d4a5e9e33b8bf9b074f926faa6d0e2fb487fa
2021-03-29 11:58:50 -07:00
Tony Wickham e63bd38a55 Remove dead taskbar code
Test: Works as before
Bug: 182512211
Change-Id: Id4c979f2924f9ae6881a9bed18bcc52fbd80c05b
2021-03-23 11:42:50 -07:00
Tony Wickham a29a046d83 Align real hotseat with taskbar hotseat during drag and drop
Remove hotseat space from workspace in DeviceProfile if
taskbar is present, and instantly swap between taskbar and
hotseat when entering SpringLoadedMode. To allow for an exact
handoff, we also scale up the TaskbarView such that its icons
match the hotseat icon size when on the home screen.

Note that this CL only supports dragging to the taskbar, not
out of it (which still triggers system drag and drop instead).

Test: In RTL and LTR, drag a workspace item and ensure hotseat
seamlessly swaps with the taskbar hotseat and allows drops.

Bug: 179886115
Bug: 171917176

Change-Id: Id6462075b9b0b66b06d51a78c9c0b3e11e83e84d
2021-03-03 11:16:42 -08:00
Tony Wickham d683d98b34 Animate taskbar background alpha and visibility alpha
Setup codepath to animate the Taskbar when going to and from Launcher,
primarily by listening for pause/resume signals but also hints from
gesture nav and AppToOverviewAnimationProvider.

Additionally, add TaskbarStateHandler to listen for Launcher state
changes if Taskbar is enabled. Combined, the end behavior is:

- Background alpha is 0 when Launcher is resumed, and 1 when Launcher
  is paused (we can make this animation more interesting later).
- Taskbar is always visible when Launcher is paused, otherwise its
  visibility is determined by multiple factors: LauncherState and
  whether the IME is showing.

Bug: 171917176
Change-Id: I7856fc979931c9d12d714dee11d179fd1b5a6968
2021-01-29 21:22:00 +00:00