Commit Graph

232 Commits

Author SHA1 Message Date
Jon Miranda 09aa46b88e Fix taskbar bg delay for the case when user is going home.
The default value was not set. I decided to flip the variable to make
it more readable.

Bug: 345768019
Test: swipe up fast to go home, note no taskbar bg
      swipe up slow to reveal taskhome, note taskbar bg shows immediately
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Change-Id: I7fb4bbdce45a14312e42abcf71f7f0643376ddc6
2024-06-21 14:27:01 -07:00
Jon Miranda 4a4b7a8059 Delay taskbar background fade in animation
- Taskbar background will fade in based on
  1. Velocity threshold
  2. End target gesture destination

Bug: 298089923
Bug: 345768019
Test: swipe up fast to go home, note no taskbar bg
      swipe up slow to reveal taskhome, note taskbar bg shows immediately
Flag: com.android.launcher3.enable_scaling_reveal_home_animation DISABLED

Change-Id: I2c16352e1c0c52a8afc49900a39b80383bacde62
2024-06-11 15:39:55 -07:00
Tracy Zhou b17af6ff75 Set inset in phone setup mode to setup inset
- In phone setup mode, gesture mode is no button but the inset we report should be setup inset

Fixes: 340998601
Test: https://screenshot.googleplex.com/8Q4WHorpUeqWSjw
Change-Id: I84d60ecc7179008e80e7b09eda5b3a1abb24e138
2024-05-16 21:38:58 -07:00
Chris Göllner 0cd995e4ef Convert SysUiState flags from int to long
We already reached the limit of 32 flags for an int. To be able to have
more, changing from int to long.

This is needed, as new flags have to be added.

Flag: NONE
Test: Manually running SysUI and Launcher
Test: Unit tests in CL
Bug: 335625543
Change-Id: Iec1d40218264c7c64c50fd09764aa07c0caa7787
2024-05-13 14:47:33 +01:00
Anushree Ganjam c9eda41c31 Hardcode the className instead of class.getSimpleName().
class.getSimpleName() causes issues with obfuscation.

Bug: 332171918
Test: Manual
Flag: NA
Change-Id: I5119a7ba0e4e27d8745c94df67881934fed282a4
2024-05-08 12:31:24 -07:00
Tracy Zhou b297d4fb83 Update SUW swipe home logic for taskbar stashing
- Reverted the previous change. It doesn't fix the issue when launching setup mode with command line. The fact that it looked as if it's fixed from factory reset might be a fluke
- Found out that we unstash the task bar to home from setup somewhere in TaskbarStashController. This is related to stashed alpha only.

Fixes: 337738795
Test: Finish setup, swipe home in folded, and observe home handle is visible.
Change-Id: I04daf41ae9a1c3b7e6e4962dd4a8c62b708e0a54
2024-05-06 13:05:41 -07:00
Tracy Zhou ee67a48d60 Do not hide nav bar on the homescreen from setup
FLAG_STASHED_SMALL_SCREEN is not updated after setup UI finishes.

Fixes: 337738795
Test: Finish setup, swipe home in folded, and observe home handle is visible.
Change-Id: I297e3b44f49f94ab5a1b9fe5ff16ff64c6cf2c0a
2024-04-30 15:01:38 -07:00
Brian Isganitis 5247849454 Make IME force stash the Taskbar.
This change moves the IME flag to be part of FORCE_STASHED rather than
STASHED_IN_APP, since there are cases where we are not in an app but
still want to stash the IME.

You can still bring up transient taskbar over IME since we do not set
the IME flag for transient mode (see TaskbarStashController#shouldStashForIme() first guardrail).

Test: Manual
Flag: N/A
Fix: 336592511
Change-Id: Iafa32b1a52f4bfbc0d3a4e77b19c82149dc42d0a
2024-04-23 18:30:24 -04: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
Alina Zaidi 0580379e30 Rename freeform tasks to desktop tasks
Bug: b/332878426
Test: refactoring CL. Existing unit tests still pass.
Flag: NONE

Change-Id: I24ad9699223dd383ff794ef3b028bf32beca96d7
2024-04-10 12:30:50 +00:00
Tony Wickham fefe8a441b Merge "Unstash taskbar due to IME immediately when system gesture starts" into main 2024-04-05 15:49:36 +00:00
Tony Wickham a6b29968a4 Unstash taskbar due to IME immediately when system gesture starts
This is reversing a previous change from a few years ago
(ag/16325264) because we now clip the recent apps on the bottom
during gesture nav, whereas before we left them unclipped until
you swiped up.

Flag: none
Fixes: 305977350
Test: verified visuals manually in persistent, transient, and 3
button nav; also tested interactions with All Apps

Change-Id: Ib3823a9bd9aebf923ad481c010c7e8544bcb6a4d
2024-04-04 22:07:43 +00:00
Sukesh Ram 5c34cf2d06 Fix Taskbar Background Visibility After Entering IME then Overview.
Fixed issue whereby taskbar background disappears as expected when the IME switcher is present, but does not appear again if the overview button is pressed after this state.

Flag: NONE
Test: Manually tested in Felix Landscape mode.
Bug: 297472865
Change-Id: If1074b28870c794db8a87dd6cd59f9656dc7c15d
2024-03-29 16:08:43 -07:00
Brian Isganitis 1956246b6e Reset stashed in Taskbar All Apps for gestures instead of IME insets.
Test: Manual
Flag: NONE
Fix: 328960039
Change-Id: I62c53c21bf850b7080e12086235cba28164f4d70
2024-03-11 20:30:32 -04:00
Jagrut Desai 3c3bef333a Fixing taskbar being unstashed after opening to unfolded mode
Test: Manual,
Bug: 312723553
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning TRUNKFOOD
Change-Id: I91aa947a707e3fc918e617f207e823b2f1460466
2024-02-29 16:17:24 -08:00
Jagrut Desai 07959348e6 Merge "Fixing taskbar unstashing after unfolding" into main 2024-02-28 15:21:40 +00:00
Jagrut Desai e424570af1 Fixing taskbar unstashing after unfolding
Test: Manual,
Bug: 312723553
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning TRUNKFOOD
Change-Id: Iddd10df6e40ee2de4ef08eb18df88d48b7468035
2024-02-27 14:44:26 -08:00
Helen Cheuk 96fd73ed84 Merge "Stash taskbar when software keyboard is docked" into main 2024-02-27 10:40:07 +00:00
bvineeth fdf6df3226 Add tags for CUJ_TASKBAR_EXPAND/COLLAPSE
Test: Checked traces
Flag: None
Bug: b/263362887
Change-Id: I28652b0629b8033fe931809bacceeede3c36ea93
2024-02-23 03:27:54 +00:00
bvineeth 4d38783106 Fix taskbar_expand/collapse jank monitor
Issue : Currently opposite jank is being reported taskbar expand and taskbar collapse


Test: Checked the trace
Fixes: b/326333977
Flag: None
Change-Id: Ib5adeb33506717ee28d669c5d46557087ebf7e60
2024-02-22 04:12:45 +00:00
helencheuk 00ddb5e3a9 Stash taskbar when software keyboard is docked
Stash taskbar when
1) Software keybaord is docked
2) Input toolbar is placed at the taskbar area (stash so toolbar and taskbar would not overlap)

Testing result:
https://drive.google.com/file/d/1NMDexHl0FgyHFaOUh_GSEEUU2k08STJH/view?usp=sharing

Bug: 317251202
Test: TaplTestsQuickstep#testQuickSwitchToPreviousAppForTablet
Flag: N/A

Change-Id: I90662bc6e68f644e919f5c702059476b02519ed6
2024-02-21 23:03:03 +00:00
Andy Wickham 1abc0a7f66 Merge "Extract TaskbarViewCallbacks to a separate class + factory." into main 2024-02-14 23:15:55 +00:00
Andy Wickham 0ae51bcdb9 Extract TaskbarViewCallbacks to a separate class + factory.
Also log long presses on the taskbar all apps button.

Test: Manual
Flag: NA
Change-Id: Id2bf194f09007bfccff9f83162e4bcfb6562580f
2024-02-13 18:51:48 -08:00
Tracy Zhou 91546d401d Do not add jank monitor for stash state change when the drag layer is not attached to the window
An alternative here is to use the root layer when NO_RECREATE flag is on. However, we do not have a reference to it here (shall we consider passing it in?)

Fixes: 325096498
Test: Need to verify
Change-Id: I1709bc88753a90547f7a61dc6e24cdaf489d19e0
2024-02-13 20:57:16 +00:00
Vineeth Bhende e2c72c0178 Merge "Add HOME_TO_APP tag to CUJ_TASKBAR_EXPAND/COLLAPSE" into main 2024-02-12 04:03:58 +00:00
bvineeth b6b3ea976f Add HOME_TO_APP tag to CUJ_TASKBAR_EXPAND/COLLAPSE
Test: checked traces
Bug: 263362887
Flag: NA
Change-Id: If85e05544b5595c6b27b1af885882415751779d5
2024-02-08 09:24:09 +00:00
helencheuk 04cd8f2852 Show taskbar when external keyboard is attached, in 3 button nav mode and desktop windowing mode
Bug: 280497051
Test: Manual, turn on desktop windowing mode. Enter input mode in an app, drag it from the top to be  window mode. Verify if taskbar is present
Flag: N/A
Change-Id: I31dc922c480cd0b39a64763155777b906e3bd14a
2024-02-02 17:31:13 +00:00
Tony Wickham c4df8c2ec6 Revert to passing mIsStashed to StashedHandleViewController again
- Fixes case where handle is initially invisible but will be stashed
  and visible, e.g. when launching an app from home screen
- To fix the original issue of sampling happening unnecessarily for
  three button nav, also check supportsVisualStashing()

Fixes: 321257120
Flag: None
Test: Launch an app from home in gesture nav mode
Test: testThreeButtonsTaskbarBoundsAfterConfigChangeDuringIme
Change-Id: I1f26436de3081fd00f75a5921010e361e9a9f34e
2024-01-19 20:25:25 +00:00
Tony Wickham 438e6c90af Fix onIsStashedChanged() not called in 3 button mode
Calling this ensures we update touchableRegion accordingly.

Since this will also start the stashed handle region sampling,
which we don't need for 3 button mode, also adjust logic to
check that the StashedHandleView is actually visible.

Flag: None
Test: Lock screen, run `adb shell cmd uimode night yes`, unlock
Test: Lock screen, rotate, unlock
  In both cases, verify touchableRegion is accurate
Fixes: 315393203
Change-Id: I951af6b97cad0ee0f362dc22f3996cfd9286a21e
2024-01-05 19:19:57 +00:00
Tony Wickham c5d4e4dcf5 Fix KI in test and re-enable for postsubmit.
- The taskbar stashing logic with hardware keyboards was different
  between tests and user experience; aligned the test to be the
  same.
- There is still a previous test failure that only occurred in
  post submit, so also add ScreenRecord to diagnose it
- Once that is resolved, can promote the test to PRESUBMIT.

Test: testQuickSwitchToPreviousAppForTablet
Flag: NA
Fixes: 318544733
Bug: 314873201
Change-Id: Ia813eb0294d759c40d90cec7a8e9a7e0aea2d917
2024-01-03 23:27:18 +00:00
Pat Manning 559434af5a Hide taskbar icons for IME when virtual keyboard is present.
Unless hardware keyboard is attached and taskbar is pinned.

Fix: 316270741
Bug: 255818649
Test: Manual. Using combinations of transient taskbar, virtual and hardware keyboards.
Flag: NONE
Change-Id: I1fae1655fc16b9fa951510cf834d2a33cb8956d8
2023-12-20 18:55:09 +00:00
Tracy Zhou 95c4c8d268 Fix crash from folding/unfolding
This is fundamentally caused by the phone device profile not having task bar related attributes, which crashes in icon alignment animation. We had resolved it by skipping this animation based on isPhoneMode check. However, we passed in launcherDp instead of taskbarDp (from TaskbarActivityContext) which doesn't always have the most up to date information in race conditions (e.g. repetitively fold/unfold)

Fixes: 311431054
Test: repetively fold/unfold, make sure it doesn't crash
Change-Id: I65f600112da4123d337b3f59a2fe6dd13ac7af74
2023-12-14 18:39:42 -08:00
Tracy Zhou 9ccd5d4257 Introduce taskbar_phone_size
In small screen, we use 48dp for nav bar height, while it's 60dp for task bar.

Bug: 230395757
Test: manual
Change-Id: Ia7083a1b2246981466e1163404c63b645a6bf5b1
2023-12-13 00:38:15 -08:00
Tracy Zhou f441fd67d3 Make sure the task bar stays unstashed upon configuration change
So we recreate task bars when configuration is changed, if ENABLE_TASKBAR_NAVBAR_UNIFICATION = true. In order for unstashed state to propagate, we need to save STASHED_IN_APP_AUTO in TaskbarSharedState.

Fixes: 311429718
Test: Unstash the task bar in app, rotate, make sure the task bar stays unstashed
Change-Id: I7db773725ea89976612e9e91af5b6911d0ec5fc0
2023-12-12 19:33:42 -08:00
Jagrut Desai 70de8a4823 TaskbarPinningController Unit Tests
Test: Presubmit
Bug: 265439107
Flag: NONE

Change-Id: I5da3558adf88126b07c5d6217ee4fbbcc1e2e348
2023-12-11 14:46:55 -08:00
Tony Wickham 18551f29fe Remove ENABLE_TRANSIENT_TASKBAR and long-press stash support
Flag: NA
Test: manual, TaplTestsTaskbar, TaplTestsPersistent, TaplTestsTransient
Fixes: 270395798
Change-Id: I4ecf5ddcd1206e846538175c684043c5e065fd5d
2023-12-06 22:13:10 +00:00
Pat Manning 54acb41e8c Merge "Do not hide persistent taskbar during input for physical keyboard." into main 2023-11-20 23:29:55 +00:00
Pat Manning a401e15553 Do not hide persistent taskbar during input for physical keyboard.
Fix: 255818649
Test: TaplTestsQuickstep
Flag: NONE.
Change-Id: Id5495163f43464125bfcbd9e255f18e24183d67a
2023-11-20 10:45:05 +00:00
Jagrut Desai 90dd098c85 Migrate ENABLE_TASKBAR_PINNING to aconfig flag
Test: Manual, Presubmit
Bug: 265437087
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning DISABLED

Change-Id: I4800230c04feceefa2398e189c493c8c4a7b2fe5
2023-11-09 23:20:03 +00:00
Jagrut Desai 631b284836 Taskbar pinning animation with no recreate
Test: Manual, Visual
Bug: 265436799
Flag: LEGACY ENABLE_TASKBAR_PINNING DISABLED

Change-Id: I84a4d1efdb0bd4a0f856fa1f46b6489ef54a3841
2023-10-26 10:36:48 -07:00
Tracy Zhou de28c115b2 Fix phone mode task bar inset values not correctly initialized
We rely on contentHeightToReportToApps and tappableHeightToReportToApps (that ultimately call into DeviceProfile) of TaskbarStashController to initialize the insets. However, DeviceProfile only initializes those values when isTaskbarPresent is true. Rather than completely changing the initialization of DeviceProfile, we special case in TaskbarStashController that uses the bar height for inset

Bug: 274517647
Test: turn on FLAG_HIDE_NAVBAR_WINDOW and TASKBAR_NO_RECREATION, make sure the insets are correct in both 3 button and gesture nav mode
Change-Id: I164a6e2c9f9d24888155b45325ee8ce46ca2c39f
2023-10-10 13:02:16 -07:00
Andy Wickham e257408101 Adds SystemActionConstants
This includes the previously added Taskbar System Action, as well
as a new one for Screen Search.

Bug: 299321919
Test: Manual
Change-Id: I4a8fa1dde402dc2de5f448cb2edbe712e128ff12
2023-09-19 22:12:40 +00:00
Mady Mellor d23489af61 Only stash bubbles in overview when it's transient taskbar
Bug: 284104811
Test: manual - enable 3 button nav
             - expand a bubble in overview
             => observe that scrim is shown on top of taskbar and it
                isn't stashed
             - repeat with transient taskbar but instead it stashes
               when bubbles are expanded in overview
Change-Id: I725513bb0015c85f26fb1eedbe22da5eb2612e55
2023-09-15 12:48:02 -07:00
Jagrut Desai fb4694d51e Merge "Apply ForciblyShown WindowLayoutParam flags for Transient Taskbar" into udc-qpr-dev am: 733d440ac1 am: a1e8f327ff
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/24709295

Change-Id: Id84c65adba08bae631cccfd6792c6a90b6992637
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-11 23:47:46 +00:00
Mady Mellor 2da9c114c4 Stash taskbar when bubbles is expanded in overview
Test: manual - have transient taskbar
             - have a bubble
             - go to overview
             - expand bubbles
             => observe that transient taskbar stashes
             - collapse bubbles
             => observe that transient taskbar unstashes

             - verify that expanding bubbles in app and on launcher
               home behaves as expected (stashes taskbar in app and
               don't see taskbar or stashed handle on home)
Bug: 284104811

Change-Id: I3d7057ed651e66ab2a0292725f30153ee4d6d51e
2023-09-11 09:41:14 -07:00
Jagrut Desai 6472119d4b Apply ForciblyShown WindowLayoutParam flags for Transient Taskbar
Test: Manual
Bug: 278078311
Flag: Not needed
Change-Id: Ia963e45b3b4e6d928b6292b80b73394e76fe2325
2023-09-11 09:39:23 -07:00
Vinit Nayak a725e48879 Revert "Prevent setting mIsStashed in TaskbarStashController"
This reverts commit 51a210d787.

Reason for revert: test may have been fixed before this got merged, will merge revert to confirm

Change-Id: Ib26b94af971eceb02e6bf58f39a578ee04eb72e8
2023-08-16 18:45:51 +00:00
Vinit Nayak 51a210d787 Prevent setting mIsStashed in TaskbarStashController
* Partial revert of ag/24139629
* Taskbar showing up where it shouldn't in gesturenav,
this change isn't behind the flag

Bug: 295047555
Change-Id: Ib36b1fed5e25c667e396291a30a68730e1daa517
2023-08-09 12:28:44 -07:00
Vinit Nayak 1fd1b68870 Ensure matching insets for taskbar gesture and 3 button nav
* WM checks that the number of insets don't change for
a given window once it's added. Previously when we changed
nav modes the window was removed and a new one was added, so
changing insets amounts/types didn't matter.
* Now that we use the same window and re-provide the insets,
the number of them provided have to match (insets values themselves
can change as much as needed)
* Fix minor bug when checking bit mask for gravity

Test: Switch between nav modes, no crash; no change in behavior
w/ flag turned off
Bug: 274517647
Flag: persist.wm.debug.hide_navbar_window
Change-Id: I750f843e8210ba1c800b61ac79664265924c054a

Change-Id: Idba4e8e1888fa58bf872c04cb042f77a8b5b0573
2023-08-02 14:21:31 -07:00
Jagrut Desai ead6a52ccc Merge "Suspend immersive mode autohide while pending transient taskbar timeout" into udc-dev am: 9f566dec6b am: 74f61b1e5b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/23734004

Change-Id: Ibd58705593ee94ddc122b7b15111c5ca3692b9dc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-22 19:20:08 +00:00