Commit Graph

12631 Commits

Author SHA1 Message Date
Treehugger Robot 5c8241b421 Merge "Update the WidgetPickerActivity to display recommendations for hub host" into main 2024-04-04 14:36:56 +00:00
Treehugger Robot df537d249b Merge "Reland "Update Split button visibility based on DeviceProfile change"" into 24D1-dev 2024-04-04 14:18:38 +00:00
Alex Chau 2bf1143079 Merge "Clean-up unnecessary desktop windowing flag usage" into main 2024-04-04 14:04:49 +00:00
Pat Manning 05bb8f39e9 Merge "Set next page immediately on subsequent arrow/tab presses when navigating overivew." into 24D1-dev 2024-04-04 13:38:53 +00:00
Johannes Gallmann ed184acb3a Merge "Use custom interpolator for predictive back system animations" into main 2024-04-04 13:19:31 +00:00
Alex Chau ddb12d7a0c Reland "Update Split button visibility based on DeviceProfile change"
This reverts commit 38bc885de9.

- Always request layout of action_buttons after changing visibility of its children
- Update Split button visibility based on DeviceProfile change in updateDimension() only
- Update Split button visibility based on 3P launcher in initialization only
- Also simplified action_buttons to wrap_content and layout in middle of parent
- Also removed the space between buttons and use marginStart
- Fixed TAPL to not expect save app pair button on phone. Before this CL actions_buttons are still on view hierarchy despite they're not visible on screen.

Fix: 321291049
Fix: 329255757
Test: Clear all tasks, fold, launch app, swipe up to Overivew; repeat in RTL
Test: OverviewImageTest
Flag: None
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:7d0edb46ac0a09aa0c801598b46cd338d04886a9)
Merged-In: I9ecf872279f6f07d2d9bc33fb09031568023cb77
Change-Id: I9ecf872279f6f07d2d9bc33fb09031568023cb77
2024-04-04 12:19:44 +00:00
Alex Chau 312dd2f5bb Merge "Reland "Update Split button visibility based on DeviceProfile change"" into main 2024-04-04 12:17:38 +00:00
Alex Chau 13b7ceeff0 Clean-up unnecessary desktop windowing flag usage
- mDesktopVisibilityController will now be null if desktop windowing flag is disabled
- As a result, all code that uses mDesktopVisibilityController no longer need to check desktop windowing flag
- DesktopTaskView/DesktopTask only populates when flag is enabled, so we don't need to check flag if we already check DesktopTaskView/DesktopTask
- Removed the flag check in SplitToWorkspaceController, as we shouldn't enable split from workspace base on desktop windowing, contextual split already have its own flag
- Also avoid creating GroupTask or DesktopTask for freeform tasks when flag is off, to avoid a crash in RecentsView

Bug: 332655617
Test: manual with desktop windowing flag on/off
Flag: ACONFIG com.android.window.flags.enable_desktop_windowing_mode DEVELOPMENT
Change-Id: I0e45f73ad2b0d99dfb4ec3215f973679ca93957c
2024-04-04 12:21:43 +01:00
Johannes Gallmann d989d0ec02 Merge "Add vsync id to predictive back transactions" into main 2024-04-04 11:20:43 +00:00
Alex Chau 7d0edb46ac Reland "Update Split button visibility based on DeviceProfile change"
This reverts commit 38bc885de9.

- Always request layout of action_buttons after changing visibility of its children
- Update Split button visibility based on DeviceProfile change in updateDimension() only
- Update Split button visibility based on 3P launcher in initialization only
- Also simplified action_buttons to wrap_content and layout in middle of parent
- Also removed the space between buttons and use marginStart
- Fixed TAPL to not expect save app pair button on phone. Before this CL actions_buttons are still on view hierarchy despite they're not visible on screen.

Fix: 321291049
Fix: 329255757
Test: Clear all tasks, fold, launch app, swipe up to Overivew; repeat in RTL
Test: OverviewImageTest
Flag: None
Change-Id: I9ecf872279f6f07d2d9bc33fb09031568023cb77
2024-04-04 11:58:35 +01:00
Treehugger Robot d477acedfb Merge "Add LAUNCHER_ALL_APPS_SEARCH_BACK jank instrumentation" into main 2024-04-04 07:20:45 +00:00
Jeremy Sim a596f589c4 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
2024-04-03 16:47:42 -07:00
Ats Jenk 3a60cee509 Update spring stiffness for bubble bar drag animation
Use MEDIUM_LOW spring stiffness for bubble bar translation spring.

Bug: 330585397
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Test: manual, drag and release bubble bar
Change-Id: Id27a5c5a7a77ae1fee988816271adb810635d84b
2024-04-03 15:26:45 -07:00
Eghosa Ewansiha-Vlachavas 43b731801b Fix launcher activity leaking when desktop windowing enabled
When desktop windowing is enabled we initiate the
`SplitFromDesktopController` within the `SplitSelectStateController`
which registers a `SplitSelectListener` on the launcher instance.
However when we destroy the `SplitSelectStateController` the
`SplitFromDesktopController` is not destroyed an thus any listeners are
not unregisterd. Instead we should explicitly destroy the
`SplitFromDesktopController` by unregistering listener.

Flag: NONE
Fixes: 332667403
Bug: 331774319
Test: atest -c NexusLauncherTests:com.android.quickstep.TaplStartLauncherViaGestureTests
atest -c NexusLauncherTests:com.android.quickstep.util.SplitSelectStateControllerTest

Change-Id: I68ffcc4114644e75f751632eca8bc73e406139a8
2024-04-03 22:04:06 +00:00
Zak Cohen 4d341404c6 Align widget picker bottom swipe transition with predictive back.
Bug: 325930715
Test: widget picker tests
Flag: NA
Change-Id: I15319f0a264503ff34dd4cc0dc36a40531379e2b
2024-04-03 12:46:33 -07:00
Sunny Goyal 54e9c6c81c Merge "Using IHomeTransitionListener for listening for Launcher state when taskbar recreates" into main 2024-04-03 16:35:05 +00:00
Ats Jenk f628796fc6 Update bubble bar bounds in shell
Shell keeps track of bubble bar bounds for positioning and animating the
expanded view.
Bubble bar location can be changed when dragging the expanded view or
bubble bar itself.
Previously bounds were only reported when expanding a bubble. But after
adding drag support, bounds can change outside of expand action.
Implement a new bubbles API to report bubble bar bounds to shell
whenever they change in launcher.
Keep track of last reported bounds to ensure that we only send bounds
over when they change and when expand API has not already reported the
bounds.

Bug: 332423960
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Test: drag expanded bubble from one side to the other, collapse it,
  observe that collapse animation collapses the view into the bar
Change-Id: If1bf31a04b8f134a1b055fddccd276e924ed98b6
2024-04-03 09:07:10 -07:00
Ats Jenk 96e4511d1a Merge "Update bubble bar location in shell" into main 2024-04-03 15:51:18 +00:00
Alex Chau 75e48fc0ec Merge "Revert "Update Split button visibility based on DeviceProfile change"" into main 2024-04-03 12:56:13 +00:00
Uwais Ashraf 38bc885de9 Revert "Update Split button visibility based on DeviceProfile change"
This reverts commit 170306d54a.

Reason for revert: Cause of b/332673787

Bug: 321291049
Change-Id: Id5ae99d28a7497debaabbc5ed09cd18f9c253750
2024-04-03 12:51:42 +00:00
Alex Chau cde4ddf4a0 Merge "Update Split button visibility based on DeviceProfile change" into main 2024-04-03 10:59:02 +00:00
Johannes Gallmann b82a47a0e7 Use custom interpolator for predictive back system animations
Bug: 332512902
Flag: ACONFIG com.android.window.flags.predictive_back_system_anims TRUNKFOOD
Test: Manual, i.e. analysing screenrecordings and verify that there are no more animation jumps at the start/end of the back animation
Change-Id: I588a8a631e068c09e88c1f3c5af5d8970746c803
2024-04-03 10:40:17 +02:00
Vinit Nayak c9ab1dcd98 Merge "Refactor how app pair icons draw" into 24D1-dev 2024-04-03 04:12:43 +00:00
Jeremy Sim fcbef122e6 Refactor how app pair icons draw
This changes (and cleans up) the way app pair icons are composed. Previously, the background and 2 icons were drawn individually and separately onto the canvas. Now, they are composed into a combined drawable first. This also allows the full icon drawable to be requested by external functions (which will be needed for display app pairs in folder previews).

Bug: 315731527
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Visually confirmed that app pairs loooks the same in all scenarios: rotation, disabled, themed, taskbar, pinned taskbar. Screenshot test to follow.
Change-Id: I7242e0c525ef578a54a06fb9137fcfc42c6f0e86
(cherry picked from commit b37faec287)
Merged-In: I7242e0c525ef578a54a06fb9137fcfc42c6f0e86
2024-04-02 23:38:47 +00:00
Sukesh Ram d6709b0a34 Merge "Fix Taskbar Background Visibility After Entering IME then Overview." into main 2024-04-02 21:56:24 +00:00
Ats Jenk 2ae49c6cab Update bubble bar location in shell
Send wmshell updates about bubble bar position when it is dragged
across the center divide.

Bug: 330585397
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Test: manual
  - with bubble bar on home screen
      - long press and drag bubble bar around on same side, no drop
        target
      - release the bubble bar, it snaps back to the original position
      - long press and drag bubble bar to other side, see drop target at
        the corner
      - release bubble bar, it snaps to the new side
      - long press and drag bubble bar to other side and back, see the
        drop target visible, release, snaps back to the original
        position
  - repeat above steps from an app, swipe up taskbar for bubble bar
Change-Id: I88faf641b9c07a19cfbb7a1feb8170a64269ac1f
2024-04-02 13:38:29 -07:00
Holly Sun d1bfd56678 [omni] Read long press duration from AppSearch and override server configured value.
Notify the appsearch values to systemui through SystemUiProxy.
See http://shortn/_WqYj0buH7R  for summary

Bug: 330446188
Test: manual. Side load agsa apk to read the value from AppSearch
Flag: legacy CUSTOM_LPNH_THRESHOLDS enabled
Change-Id: I7bd2688178da48ae8eb9e62e135304cba2fec8ce
2024-04-02 19:04:53 +00:00
Sunny Goyal 9e6e3562f0 Using IHomeTransitionListener for listening for Launcher state when taskbar recreates
IHomeTransitionListener was only used when the visibility state changes, but not
when the taskbar is recreated during rotation. Instead we create a static listener
to keep track of current home visibility state

Bug: 331947346
Bug: 331947116
Flag: aconfig use_activity_overlay staging
Test: Manual
Change-Id: Icf613f7fc4f78e3f76a600202687b069d53a16dd
2024-04-02 10:36:54 -07:00
Johannes Gallmann f151bfdd53 Add vsync id to predictive back transactions
Bug: 331808052
Flag: ACONFIG com.android.window.flags.predictive_back_system_anims TRUNKFOOD
Test: Manual, i.e. recorded perfetto trace and verified that missedFrames metrics showed up
Change-Id: I3dc5900ddedcb70467de7667f1555862dee5b45d
2024-04-02 17:35:45 +02:00
fbaron c0c0bdbc38 Fix null pointer in FloatingWidgetView
Flag: NONE
Test: NONE
Bug: 331868669
Change-Id: I350e6660ea1936bb9ee799c3d2c840c57876fef4
2024-04-01 13:17:49 -07:00
Shamali P 7ae51788da Update the WidgetPickerActivity to display recommendations for hub host
- Accepts a ui_surface param of format "widgets{_hub}" and existing
widgets on the surface to be excluded from predictions
- Refactored the widgets prediction update task to extract reusable
logic that maps the predictions to widget items and reused it.

http://screencast/cast/NjE1MTA5MDI0NzU2NTMxMnwzMGE3NTMwNi1hZg

Bug: 326092660
Test: WidgetsPredictionHelperTest and see screencast above.
Flag: N/A
Change-Id: I6ceeb752c167893bab4ed496cedc5e8081e1b950
2024-04-01 20:16:37 +00:00
Fengjiang Li 01cc273537 Add LAUNCHER_ALL_APPS_SEARCH_BACK jank instrumentation
Bug: 330405993
Test: prefetto trace TBD
Flag: aconfig com.android.launcher3.enable_predictive_back_gesture TEAMFOOD
Change-Id: I1fb2876fb29bc360cbb8dc8c1605215f28383c3c
2024-04-01 11:12:50 -07:00
Liran Binyamin 1bc33421de Merge "Initial animation of new bubble bar bubble" into main 2024-04-01 17:54:59 +00:00
Ats Jenk 599ed3ba06 Merge "Create drop target for bubble bar" into main 2024-04-01 17:14:55 +00:00
Jeremy Sim 370d05a276 Merge "Update save app pair icon" into 24D1-dev 2024-03-30 03:36:21 +00:00
Jeremy Sim da4ba9336e Merge "Reparent folders and app pairs" into main 2024-03-30 03:06:44 +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
Jeremy Sim 742630c2f8 Reparent folders and app pairs
Previously, app pairs and folders shared a common data model, FolderInfo. Now we need to separate them, so a new type, CollectionInfo, will serve as the parent of both types.

Bug: 315731527
Fixes: 326664798
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Manual, unit tests to follow
Change-Id: Ia8c429cf6e6a376f2554ae1866549ef0bcab2a22
2024-03-29 15:39:28 -07:00
Treehugger Robot 520d91f93b Merge "Don't toggle scrollbar during predicitve back swipe to avoid flicker" into main 2024-03-29 09:56:10 +00:00
Ats Jenk f221b8a7de Create drop target for bubble bar
When dragging bubble bar in launcher, show drop target when drag passes
middle of the screen.

Bug: 330585397
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Test: manual
Change-Id: I52c3e9ac0b7c36e2207640baf75dc44300b522ef
2024-03-28 14:21:33 -07:00
Alex Chau 170306d54a Update Split button visibility based on DeviceProfile change
- Updating Split button visibility in notifyPageSwitchListener() is sometimes too late and causes OverviewActions failed to re-center after removing Split button
- Instead, update Split button visibility based on DeviceProfile change in updateDimension(), which is the ultimate source of information impacting button visibility

Fix: 321291049
Test: Clear all tasks, fold, launch app, swipe up to Overivew
Flag: None
Change-Id: If518cb02429011fedfb8df3dd05dd7ab180d849a
2024-03-28 21:10:12 +00:00
Liran Binyamin 074a3a66b0 Initial animation of new bubble bar bubble
This change animates a new bubble bar bubble. Currently only handles the case where the bubble is added when the bubble bar is stashed.
There's no synchronization with the stash handle yet either.

Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Bug: 280605790
Test: atest BubbleBarViewAnimatorTest
Change-Id: Ic3f5edc0dde204f871cf7e1288bd50620e6beebb
2024-03-28 11:30:56 -04:00
Uwais Ashraf 1a4052a44f Merge "Remove unused code and fix warnings" into main 2024-03-28 14:03:36 +00:00
Alex Chau 2165ad7b0e Revert "Log split button visibility to debug spacing issue"
This reverts commit 2d55c9c679.

Reason for revert: Logs not helpful in figuring out the issue and is too spammy
Bug: 321291049
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a5d55fe5efad4db1678dfe7960f82df68b664b7d)
Merged-In: I88a4350277ea3e965493da6386cf4c83c5c564e4
Change-Id: I88a4350277ea3e965493da6386cf4c83c5c564e4
2024-03-28 12:13:30 +00:00
Alex Chau c7dea26289 Merge "Revert "Log split button visibility to debug spacing issue"" into main 2024-03-28 12:12:29 +00:00
Schneider Victor-tulias 5a85b4f2df Close the KQS view when touching the gesture nav region
Also, stop handling KQS open/close during gestures

Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 328689890
Fixes: 328689534
Fixes: 328692760
Test: attempted gestures while KQS is shown. attempted KQS while attempting gestures
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:14d912b062e69fe8bc4729b6f8b40e53d5b4a669)
Merged-In: Idbd1f9cef09d9fbf611350d0847d94ccf8300369
Change-Id: Idbd1f9cef09d9fbf611350d0847d94ccf8300369
24D1-dev is based on 24Q2-release. Therefore, we merged this CL to 24D1-dev.
2024-03-28 07:27:09 +00:00
wilsonshih cc39a10dd0 Do not report finish in mergeAnimation...
...if the handler don't know how to process the transition.
So the Transitions can pass that transition to next handler.

Flag: NONE
Bug: 328619216
Test: manual, use alt+tab to relaunch a task where it's activity
is destroyed.
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:7130116894eb7f756a16da6b5ff0e754a356d50d)
Merged-In: Idf3f78103a56e91806ec2f6e364c6e8e7f4e205c
Change-Id: Idf3f78103a56e91806ec2f6e364c6e8e7f4e205c
24D1-dev is based on 24Q2-release. Therefore, we merged this CL to 24D1-dev.
2024-03-28 07:21:57 +00:00
Schneider Victor-tulias 3d001dee6b Update KQS task view layouts to new specs
The small size of the screenshots and make text look odd. Implementing new UI specs to improve this.

- Updated icon position and size
- Added some blur to the thumbnail

Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 328259439
Fixes: 328692456
Test: opened KQS in dark and light mode
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:dba7cbae1adfde615060598a55b5ee0edfedef9f)
Merged-In: I2b20100ddeb562291edf5f0bacbce916002eee45
Change-Id: I2b20100ddeb562291edf5f0bacbce916002eee45
24D1-dev is based on 24Q2-release. Therefore, we merged this CL to 24D1-dev.
2024-03-28 06:56:20 +00:00
Jeremy Sim de9b132f08 Update save app pair icon
This CL changes the save app pair menu icon to the latest spec. It looks good!

Fixes: 331525186
Flag: N/A
Test: Manual
Change-Id: Ic73f78a27372aca565fce2e3be3e9f3b8ef1d942
(cherry picked from commit 1d48159bd5)
2024-03-28 04:44:18 +00:00
Jeremy Sim c61f4ede3c Merge "Update save app pair icon" into main 2024-03-28 01:44:55 +00:00