Commit Graph

389 Commits

Author SHA1 Message Date
Sunny Goyal 6988855e55 Removing state from TISBinder
Making OverviewComponentObserver a singleton

Bug: 384896306
Bug: 337863494
Test: Presubmit
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:64dcfcf0c75c3c238735cc1e9100a8b78eae9941)
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:bb358e2342bbdf5cce6e0afcc945852b33dde32c)
Merged-In: Ic7805ee4f4eef25098ddec4025062135d03c1611
Change-Id: Ic7805ee4f4eef25098ddec4025062135d03c1611
2025-01-13 11:45:35 -08:00
Sunny Goyal fc69516a06 Removing TisHelper dependency in taskbar
Taskbar should be able to access TouchInteractionService directly

Bug: 384896306
Test: Presubmit
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:ddded547bb5556288b81e2d91e151710aab7521d)
Merged-In: I2a32d3a7a2b2071645abff72c62635c6575a48a1
Change-Id: I2a32d3a7a2b2071645abff72c62635c6575a48a1
2025-01-13 11:45:22 -08:00
Sukesh Ram 3cecfd077c Fix Taskbar 3 Button y position on launcher home pause/resume
When app launcher pauses (not on app entry, but whilst home), we want to move the taskbar buttons to 3-button mode to avoid overlap with any popup UI (usually in the form of bottom sheets). To avoid overriding existing app entry animations, this is only implemented for cases of launcher pause without a launcher stop.

Flag: EXEMPT bugfix
Bug: 373977342
Bug: 374058222
Test: Manual
Change-Id: I727173b0ae7f3f8e23b1da6755ceda6493b311cb
2024-11-28 00:27:42 +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
Marzia Favaro fadf3a891c Enable split screen from app handle also for non-desktop devices
Test: manual, open menu and go to split screen
Flag: com.android.window.flags.show_app_handle_large_screens
Bug: 377689543
Change-Id: Iaf8794abc1111c4ebce9254f6f5d1bada7f57dd5
2024-11-19 15:19:34 +00:00
Johannes Gallmann f47df1f60a Merge "Use FlingOnBackAnimationCallback for predictive back" into main 2024-11-11 08:29:47 +00:00
Tony Wickham 87455f28fc TaskbarManager now sets TaskbarUIController for RecentsWindowManager
- FallbackTaskbarUIController can take in a generic
  RecentsViewContainer parameter, i.e. RecentsActivity or
  RecentsWindowManager.
- When changing Overview targets to RecentsWindowManager, which is not
  an Activity, we still update the TaskbarUIController

Test: Switch between default Home activities with the flag on and off,
ensure Taskbar works as expected in each case (3P vs 1P launcher).
Flag: com.android.launcher3.enable_fallback_overview_in_window
Fixes: 368030750
Fixes: 365775636

Change-Id: Ife775e8c226f8c73ec9e1f97b4a6f2972f6c905f
2024-10-30 20:21:26 +00:00
Johannes Gallmann 600c1af779 Use FlingOnBackAnimationCallback for predictive back
Use FlingOnBackAnimationCallback to get automatically interpolated progress and out-of-the-box support for back gesture flings.

Bug: 362938401
Test: Manual, i.e. testing launcher predictive back cases (all apps, widget-picker)
Flag: com.android.window.flags.predictive_back_timestamp_api
Change-Id: I35806dbf005eb6fce97327d26c1e75bca60c2c77
2024-10-30 13:32:15 +00:00
Sukesh Ram 4781b26bf4 Merge "Revert "Fix Taskbar Y-Translation with Visible Bottom Sheet"" into main 2024-10-28 21:42:54 +00:00
Sukesh Ram 99c442b015 Revert "Fix Taskbar Y-Translation with Visible Bottom Sheet"
This reverts commit d82503fc42.

Reason for revert: Introduced crashes

Change-Id: I0956f746e25ccfe655169580fd802d33f99c0652
2024-10-28 17:26:47 +00:00
mpodolian 1d4e75c777 Refactored hotseat translation X logic
Made retrieval of the hotseat translation X easier to use.

Test: Manual. Set the navigation mode to 3-button. Moved the bubble bar
from one side to the other. Switched the navigation mode to gestures.
Moved the bubble bar from one side to the other again.
Bug: 373422448
Flag: EXEMPT refactoring

Change-Id: Ie69f1ecf178244008e5c752882c4b91a30928756
2024-10-17 09:46:47 -07:00
Mykola Podolian 79032facbf Merge "Created a helper method that calculates the hotseat icons shift X." into main 2024-10-16 00:12:44 +00:00
Sukesh Ram d82503fc42 Fix Taskbar Y-Translation with Visible Bottom Sheet
When bottom sheet is visible, such as in SUW or when app launcher pauses, the taskbar three buttons are translated upwards clashing with SUW UI.

Flag: EXEMPT bugfix
Bug: 358532768
Test: Manual
Change-Id: I0d18bda5cb7aeae894f5058df89cc413e34c00fc
2024-10-14 23:41:38 +00:00
mpodolian 51e2bb31ed Created a helper method that calculates the hotseat icons shift X.
Moved out logic that computes the translation X for the hotseat icons.

Fixes: 368379159
Test: Manual. Have the hotseat adjusted. Open any application from the
hotseat bar. Go back to home.
Flag: EXEMPT refactoring

Change-Id: If9dfa70be537f87b075bd865e7f9c5cd1ae78f00
2024-10-09 12:17:01 -07:00
Alina Zaidi 90f9700b4d Merge "[dev_option] Move DestopModeFlags out of android.windows.flags" into main 2024-10-08 20:24:06 +00:00
Alina Zaidi 8c0dc4c655 [dev_option] Move DestopModeFlags out of android.windows.flags
This is to maintain separation of non-generated files from generated flag values.

Test: Current tests pass
Flag: EXEMPT refactoring
Bug: 370777204
Change-Id: If9ca76cbf084da7a37241216f41319610adc52b0
2024-10-08 17:51:23 +00:00
Jagrut Desai d37759429b Merge "Fix Taskbar to Hotseat Animation for Non-Predective back apps" into main 2024-10-08 16:08:09 +00:00
Jagrut Desai 0a65c5bd72 Fix Taskbar to Hotseat Animation for Non-Predective back apps
- Refactored Taskbar animation duration to under one method and added logic to sync animation duration according to enableScalingRevealHomeAnimation.
- Change the interpolator for TaskbarLauncherStateController based on enableScalingRevealHomeAnimation.

Test: Presubmit, Manual
Bug: 369378541
Flag: EXEMPT Bug Fix
Change-Id: I942829b475f91e9102801b758eb7ee0d27eee912
2024-10-07 17:01:00 -07:00
mpodolian 3dcb19f33a Fixed the hotseat placement in RTL mode
Updated logic that computest the hotseat shift.

Fixes: 372014534
Flag: com.android.wm.shell.enable_bubble_bar
Test: Manual. Put device into 3 buttons navigation mode, force RTL.
Hotseat is placed next to the navigation buttons bar.

Change-Id: Ie7b6be11a093ffa4006182bdc0b73018ba799246
2024-10-07 10:34:42 -07:00
Jeremy Sim 66b695b5fd Update splitscreen SnapPosition constants
Bug: 349828130
Test: No logical changes, continues to pass tests
Flag: com.android.wm.shell.enable_flexible_split
Change-Id: I7b0b436c7eabf7d9fc46e2c6d6e504343d06e48a
2024-09-27 19:17:20 +00:00
Mykola Podolian 6f231f694d Merge "Update placement of the hotseat according to the bubble bar location." into main 2024-09-27 15:45:04 +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
Schneider Victor-Tulias 62335be7c9 Track all ActiveGestureLogs in ProtoLog
Flag: com.android.launcher3.enable_active_gesture_proto_log
Bug: 293182501
Test: checked protolog traces in winscope
Doc: go/launcher-protolog-support

Change-Id: I2eb153aa9a94fe49f9c5e9b93b0be5e14fb4eb9c
2024-09-25 14:28:00 +00:00
Randy Pfohl 31aefc3290 Merge changes from topic "windowRecents" into main
* changes:
  Cleaning up unusued handlers
  Moving RecentsWindowManager away from the singleton pattern
  Limited recents in window introductory cl
  abstracting fallback views to support container instead of activity
2024-09-24 16:13:30 +00:00
Treehugger Robot 91af098288 Merge "[Predictive Back] Enable predictive back in AndroidManifest.xml" into main 2024-09-24 04:08:06 +00:00
Fengjiang Li 45d79db4d7 [Predictive Back] Enable predictive back in AndroidManifest.xml
Calling "getApplicationInfo().setEnableOnBackInvokedCallback(true)" is only suggested in tests.

Fix: 337985862
Flag: NONE - release feature fix
Test: manual
Change-Id: I336bdbe31c726b518d9342b1d39ef9e92f4dd498
2024-09-23 16:11:28 -07:00
randypfohl daf37eeb07 Cleaning up unusued handlers
Test: Built and tested locally

Flag: NONE Removing unused handler references

Bug:292269949

Change-Id: I83ec8299a82ea8f3db0dace7fb3b823a703b6b62
2024-09-20 16:09:52 -07:00
Alina Zaidi e05f1fc2dd [dev_option] Use DesktopModeFlags from core instead of Shell
Test: Current tests pass
Bug: 368055148
Flag: EXEMPT refactoring
Change-Id: I9d88ab95c168d970de488e7d098e060fcf8013e4
2024-09-19 10:04:50 +00: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
Treehugger Robot 206e15b286 Merge "Move DesktopVisibilityController to TouchInteractionService" into main 2024-09-12 02:32:00 +00:00
Schneider Victor-Tulias 2b46c945a7 Move DesktopVisibilityController to TouchInteractionService
Moved DesktopVisibilityController to TIS for 3P launcher support.

Flag: EXEMPT bug fix
Fixes: 338063030
Fixes: 357859025
Test: Launched overview and resumed desktop task from desktop mode on 1P and 3P launchers
Change-Id: I64e99a32ed13bcb6e4a81a18c29df2643373dc35
2024-09-11 09:56:35 -07: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
Alex Chau 54fc5e0e52 Improve Task launch logging and function naming
Fix: 360186814
Test: manual
Flag: EXEMPT REFACTOR
Change-Id: I22c5a08382800941f0dd8f64f6129438ac04edaa
2024-09-05 16:58:06 +01:00
Winson Chung 380f11e9d5 Merge "5/ Remove unused recents code" into main 2024-08-30 03:00:49 +00: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
Fengjiang Li 1f25f6405c [Predictive Back] Clean up flags
Fix: 270614790
Flag: NONE - clean up flag
Test: presubmit
Change-Id: I956ce6067dca5d2517b45046ae8a392df1023e49
2024-08-29 13:38:05 -07:00
Jeremy Sim bfb29a2e3f Merge "Add a contentDescription to splitscreen's first staged task" into main 2024-08-20 05:05:50 +00:00
Jeremy Sim 2e59268f3b Add a contentDescription to splitscreen's first staged task
Currently, when we stage the first app in a split, the floatingTaskView has no contentDescription and is announced by screen readers as "unlabeled".

This CL allows FloatingTaskView to copy a contentDescription from the underlying task or ItemInfo when it is created.

Also changes SplitConfigurationOptions#itemInfo to a private field with a public getter for mockito compatibility.

Fixes: 319783133
Test: Confirmed with TalkBack on Overview, contextual and Intent splits
Flag: EXEMPT bugfix
Change-Id: Ia5a95e403bfe8623e17d2ceac9073ef15c7bb476
2024-08-20 03:19:58 +00:00
Luca Zuccarini 0ad76ac07d Merge "Move some Shell utils to the Shared package." into main 2024-08-16 16:32:37 +00:00
Ben Lin d924a99dd6 Merge "Check for leftTopTask and rightBottomTask in KQS." into main 2024-08-12 22:24:45 +00:00
Ben Lin fd9056cab4 Check for leftTopTask and rightBottomTask in KQS.
KQS currently always take the GroupTask's taskId1 and taskId2 as
leftTop/rightBottom, in that order. However, sometimes it is possible
that the order is flipped; RecentTasksController#getRecentTasks return a
list of tasks base on recency, and it is possible that when it
initializes a new GroupTask, it put leftBottom as task2 and vice versa,
completely dependent on how they are processed. This CL uses
GroupTask#mSplitBounds as the source of truth to see

1) Which leftTop/rightBottom to draw for the thumbnail and
2) Which task is leftTop, which task is rightBottom, for re-launching

Bug: 328691131
Test: Manually; using KQS, no longer see the app in the wrong places
Flag: EXEMPT bugfix
Change-Id: I14b3becb05359a917372ec2d7d80d32190f0f96b
2024-08-12 13:33:35 -07:00
Treehugger Robot a039778109 Merge "Show Taskbar education when launching an app pair." into main 2024-08-10 01:23:54 +00:00
Saumya Prakash e7d9e9f647 Show Taskbar education when launching an app pair.
This change ensures that the Taskbar education shows up when a saved app
pair is launched and the education had not been seen before. This
matches the expected behavior as well as transient taskbar's behavior.

Fix: 323298512
Test: Create an app pair, reset taskbar education and launch the app
pair from home. Repeat for 3 button nav and pinned taskbar.
Flag: EXEMPT bugfix

Change-Id: I5ca68424f846f25beb1390c2dc50dfac3ba8e8d9
2024-08-09 23:37:45 +00:00
Mady Mellor 1cc100844c Add a bubble option to launcher long press menus
- Add a launcher "system shortcut" to bubble deep shortcuts or apps
- For shortcuts, save the shortcut info to use to produce the bubble
- Add an interface so that the system shortcut can call through to
  sysui proxy

Flag: com.android.wm.shell.enable_bubble_anything
Test: manual - enable the flag and try to bubble a shortcut via the
               longpress menu on launcher
             - try bubbling an app on launcher
             - try bubbling an app from the taskbar
Bug: 342245211
Change-Id: I1ef49e1628ba0be9cea05073ecd9cd66bf67f88f
2024-08-08 21:23:13 +00:00
Luca Zuccarini 3cdabb8864 Move some Shell utils to the Shared package.
Bug: 322791067
Flag: EXEMPT move only
Test: NA
Change-Id: I8a827a200340fd1ee0168ed16c4f5223150a1795
2024-07-31 14:10:54 +00:00
Alina Zaidi 00614eae0e Use DesktopModeStatus#canEnterDesktopMode instead of just Flag check.
Test: Existing tests pass
Bug: 349544589
Flag: EXEMPT minor refactoring
Change-Id: Idf572d48d35b8eeedd7fd1b8c608834d27a818e7
2024-07-31 10:47:16 +00:00
Perry Wu f1e7136cce Merge "Fix launcher KCA updates when entering -1 screen" into main 2024-07-26 16:14:42 +00:00
Perry Wu 603f408bf8 Fix launcher KCA updates when entering -1 screen
Fix an issue where launcher incorrectly sets KCA as visible when
entering the -1 screen. This adds a check for whether we are on the
-1 screen.

Note that there is still a another callback that happens when
interacting or exiting the -1 screen, could be worth investigating
further.

Flag: EXEMPT bugfix
Test: enter -1 screen > verify pip moves down and KCA visible=false
Test: exit -1 screen > verify pip moves up and KCA visible=true
Bug: b/354080363
Change-Id: I1b8c05af21eca5a2accc8e94ab016f6c50c74c7c
2024-07-25 17:00:17 +00:00
Shamali Patwa b4d185e3cc Merge changes from topic "popup-refactor" into main
* changes:
  Delete the unused code from popup provider
  Update references that read popup data provider to use picker provider
  Update references that wrote widget data to popup data provider
  Move widget related listeners to widget picker data provider
  Define widget picker data provider separate from popup provider
  Create a separate class for widget related methods from popup provider
2024-07-24 18:46:35 +00:00