Commit Graph

22670 Commits

Author SHA1 Message Date
Ats Jenk 821adae181 Store bubble bar state in sysui proxy
SysUIProxy may not be initialized when we set the launcher bubble bar
state and the listener.
Listener is stored in a field and set in sysui when the proxy
initializion is complete.
Add the same for the launcher bubble bar state. Otherwise bubble bar
state in sysui may not be immediately updated.

Bug: 357115534
Test: restart device, trigger a bubble before device is rotated
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I5dca49981c45b0e4c8c2535a283b9d9241eb47ba
2025-04-24 14:04:45 -07:00
Liran Binyamin 4753b6e83e Merge "Pass bubble bar bounds to shell on handshake" into main 2025-04-24 13:56:59 -07:00
Ats Jenk bc164497b5 Merge "Tell WMShell when bubble bar is active or not active" into main 2025-04-24 13:00:03 -07:00
Liran Binyamin 149db6c701 Pass bubble bar bounds to shell on handshake
If the systemui process restarts, as it does as part of tests,
it does not get notified about the bubble bar bounds until they
actually change. This could result in invalid bounds for the
expanded view which would prevent bubbling tasks.

This change ensures that the bounds are sent to shell after the
initial handshake.

20x runs: https://android-build.googleplex.com/builds/abtd/run/L46000030011522666

Bug: 411307439
Test: atest BubbleAnythingTest
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I2a5898f32506529b8860274cdee1fcea1a264e83
2025-04-24 11:07:56 -07:00
Ats Jenk 8c37d68fa7 Merge "Bubble bar to ignore launcher state changes after destroy" into main 2025-04-24 09:16:26 -07:00
Daniel Andersson 6b0e2f4bfa Merge "desktop-exploded-view: Animate when a desktop task is dismissed" into main 2025-04-24 08:58:17 -07:00
Uwais Ashraf a6f5fda29e Merge "Add tracking of visibleTasks to enable more reliable request creation." into main 2025-04-24 08:26:41 -07:00
Treehugger Robot 48e09c9f1d Merge "Refactor on end runnable of create task dismiss animation." into main 2025-04-24 05:52:06 -07:00
Pat Manning 5783a8ef92 Refactor on end runnable of create task dismiss animation.
This is mostly used for snapping pages and resetting task values after dismissal.

Fix: 409494671
Fix: 409509940
Test: TaplTestsQuickstep
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: Ie53ad75f6b96bc833cad86fc42b337d845b49a18
2025-04-24 11:52:54 +01:00
Pat Manning 4803577d25 Disallow scrolling of Recents during dismissal by consuming touch event.
Fix: 408820591
Test: Manual
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I4d3b3be60b7557fbc24220a691e80d4b254dccb4
2025-04-24 03:16:24 -07:00
Uwais Ashraf d99cbd8b41 Add tracking of visibleTasks to enable more reliable request creation.
Enforce synchronisation of parallel operations (e.g. updating task requests and tasks map MSF)

Fix: 395717365
Fix: 395331030
Fix: 410825381
Fix: 407558302
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: TasksRepositoryTest
Test: ABTD run for black thumbnails (OverviewImageTest, OverviewSplitTaskImageTest, OverviewMenuImageTest)
Test: ABTD run for memory metrics
Change-Id: Ib21487361b3e877170acfcdfed8d095bf1424061
2025-04-24 09:57:10 +00:00
Shamali Patwa d83ecd4c44 Merge changes from topic "dwb-refactor-domain" into main
* changes:
  Move app timer in the taskContentView behind a refactor flag.
  Change task content view to be a constraint layout.
  Extract out timer text specific utility from the dwb view
  Add a ui state for the app timer toast and add a mapper function for it
2025-04-23 19:49:38 -07:00
Jon Miranda ce82b8a6bd Merge "Switch taskbar overflow flag to lse_desktop_experience" into main 2025-04-23 18:04:05 -07:00
Mykola Podolian 976ab5aebd Merge "Check the bubble bar maximum so it is not cut off." into main 2025-04-23 17:00:38 -07:00
Ats Jenk 7d28df80e8 Bubble bar to ignore launcher state changes after destroy
When device is rotated, launcher is recreated and the existing
controllers are destroyed.
As part of handling the destroy signal, LauncherTaskbarUIController
updates the launcher state to in-app. This launcher state change is
handled by BubbleStashController which in turn notifies
BubbleBarViewController that bubble bar should be collapsed.
BubbleBarViewController then notifies WMShell that bubble bar should be
collapsed. And that state is stored in WMShell.
This causes bubble bar to collapse when it is expanded on home screen
and device is rotated.
Fix this by checking if the TaskbarActivityContext is already destroyed
when a launcher state change happens. And if it is, ignore those state
changes.

Bug: 357115534
Test: expand bubble bar on home screen, rotate device, check that bubble
  bar remains expanded
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I7e019f8d1fd7935582d84a99d3afa3ffadd92799
2025-04-23 16:18:57 -07:00
Daniel Andersson 6d514be4fc desktop-exploded-view: Animate when a desktop task is dismissed
This CL makes it so that the DesktopTaskView smoothly animates from
the old exploded view to the new when a task is dimissed.

Flag: com.android.launcher3.enable_desktop_exploded_view
Test: Manual
BUG=411155030

Change-Id: Idf22607336b5974bc72cc0e9009583f885ba0d67
2025-04-23 16:08:55 -07:00
Jon Miranda a19e4e2063 Switch taskbar overflow flag to lse_desktop_experience
Both flags are in Nextfood, so there will be no change to
user experience.

Bug: 368119679
Bug: 375627272
Test: TaskbarOverflowTest
Flag: com.android.window.flags.enable_taskbar_overflow
Change-Id: Ie3ef3bd49e078f5657bd069bc92c5a48a136e7cb
2025-04-23 15:20:04 -07:00
Treehugger Robot 59e208c28e Merge "Moving various launcher binding logic, outside LauncherModel" into main 2025-04-23 12:32:54 -07:00
Treehugger Robot 7919c64e6c Merge "RecentsWindowManager onDestroy fixes" into main 2025-04-23 11:56:42 -07:00
Treehugger Robot eddf617062 Merge "Dismiss KQS when focused display changes" into main 2025-04-23 10:23:31 -07:00
Shamali P fd57876c7c Move app timer in the taskContentView behind a refactor flag.
Bug: 405359383
Flag: com.android.launcher3.enable_refactor_digital_wellbeing_toast
Test: Screenshot tests
Change-Id: Ib1cf21aabc8d01a14c0dedbfa770e9f0bba52268
2025-04-23 09:44:00 -07:00
Shamali P 3519785d79 Change task content view to be a constraint layout.
This is for child cl to be able to place dwb inline in it.

Bug: 405359383
Flag: com.android.launcher3.enable_refactor_task_content_view
Test: Screenshot tests
Change-Id: Id3252fff5776c199ae2a0c7e89d96c423241478c
2025-04-23 09:43:48 -07:00
Shamali P a7b69dc3d5 Extract out timer text specific utility from the dwb view
Bug: 405359383
Flag: com.android.launcher3.enable_refactor_digital_wellbeing_toast
Test: Unit test for the util
Change-Id: Ic7444e3e874e3b9870894cd16f7259f6fa1197c6
2025-04-23 09:43:36 -07:00
Shamali P 1ce7abb6fb Add a ui state for the app timer toast and add a mapper function for it
Bug: 405359383
Flag: com.android.launcher3.enable_refactor_digital_wellbeing_toast
Test: Unit test for mapper
Change-Id: I35271ff33c8610d79674438fb18a3d851eb3d2d3
2025-04-23 09:43:23 -07:00
Will Osborn 0c3fbf04a3 RecentsWindowManager onDestroy fixes
1. Use UI thread for callback removal
2. Call TISBinderHelper.onDestroy

Bug: 413003643
Test: local test
Flag: EXEMPT bugfix

Change-Id: I99c59842d7b35a52b7ee6424348c1a9ce864f490
2025-04-23 16:22:44 +00:00
Ajinkya Chalke 288e705c43 Dismiss KQS when focused display changes
- When focused display changes, the KQS view doesn't receive any
  KeyEvents thus the view remains open even if user clicks or hits Esc
  while on a different display.
- Use FocusState to dismiss KQS if the displayId changes.

Bug: 382762871
Flag: com.android.launcher3.enable_alt_tab_kqs_on_connected_displays
Test: m
Change-Id: Ic34a2bc7863575449e5b5c88377da8b1a8d48c20
2025-04-23 14:38:54 +00:00
Will Osborn 05e4134b73 Merge "Pass display id to startRecentsAnimation" into main 2025-04-23 02:23:40 -07:00
Toshiki Kikuchi 740de77860 Merge "Restrict nav mode UI checks within primary display" into main 2025-04-22 19:48:10 -07:00
Treehugger Robot e7cb23a501 Merge "Fix TaskbarOverflorTest failures with multi-desks on" into main 2025-04-22 16:30:44 -07:00
Treehugger Robot 79711ad43a Merge "[CD Projected Mode] Make Taskbars for Detected displays on Boot when Connected" into main 2025-04-22 15:36:30 -07:00
mpodolian bf869d5de1 Check the bubble bar maximum so it is not cut off.
Add check of the bubble bar highest size when setting the taskbar window
size from TaskbarViewController.onRotationChanged

Fixes: 407708503
Test: Manual.
Use foldable device, set navigation mode to the 3 buttons. Fold the
device and trigger bubble. Lock screen. Unfold. Unlock screen. The
bubble remains visible.
Flag: EXEMPT bugfix

Change-Id: If16bf289ea394f6586d8530182db000dbcdea214
2025-04-22 15:26:45 -07:00
Treehugger Robot 347e2cfe12 Merge "Block dismiss while recents is scrolling." into main 2025-04-22 14:35:24 -07:00
Sunny Goyal c078d6554c Moving various launcher binding logic, outside LauncherModel
This brings the BgCallbacks closer to a repository pattern making is easier to switch eventually

Bug: 390572144
Flag: EXEMPT refactor
Test: Updated AsyncBindingTest to use real ModelCalbacks
Change-Id: I9c932b00ea8ac7330473b9c0f5d778453fe7a390
2025-04-22 14:12:17 -07:00
Treehugger Robot 055a15a214 Merge "Get DesktopVisibilityController via dagger in TopTaskTracker" into main 2025-04-22 11:15:22 -07:00
Ats Jenk 96e3fd6713 Tell WMShell when bubble bar is active or not active
Use new Bubbles aidl method to tell WMShell when bubble bar is used or
not used.
Allows to better handle cases where taskbar (and bubble bar) get
recreated during rotation.

Bug: 357115534
Test: open an app, expand bubble bar, rotate device, check bubble
  remains expanded
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I1c77eecb2b574b3d9b33aadafd1585e1aca26bdb
2025-04-22 10:47:29 -07:00
Treehugger Robot 16830c6430 Merge "Add unit tests for KQS CD changes" into main 2025-04-22 10:46:42 -07:00
Will Osborn 50a1b9089c Pass display id to startRecentsAnimation
Test: local + unit
Bug: 392703464
Flag: com.android.launcher3.enable_overview_on_connected_displays
Change-Id: I7eb65a1d6b98703a19432b9fa24c3c4b262aa045
2025-04-22 17:46:01 +00:00
minch d5d15c493f Fix TaskbarOverflorTest failures with multi-desks on
Bug: 362720309
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Change-Id: I91621d4c71d1ab28fb4b17ab62ba6c8ff43cb7d2
2025-04-22 16:10:57 +00:00
Treehugger Robot 8184e7116d Merge "Fix broken TaplStartLauncherViaGestureTests close activity flow" into main 2025-04-22 08:50:08 -07:00
Treehugger Robot be99fc78bb Merge "Decouple actionsView disabled state from clearAllButton visibility" into main 2025-04-22 08:42:49 -07:00
minch 4b694fa2c4 Get DesktopVisibilityController via dagger in TopTaskTracker
Bug: None
Test: m
Flag: EXEMPT refactor
Change-Id: I5adcf67be8a1afb6902820e30eec20630285f413
2025-04-22 15:33:35 +00:00
Ajinkya Chalke c96b9adf79 Add unit tests for KQS CD changes
Bug: 382762871
Bug: 382769617
Test: KeyboardQuickSwitchControllerTest and TaskbarOverflowTest
Flag: EXEMPT adding tests
Change-Id: I053af97774230a9bc3d21ff8e1e328344519f728
2025-04-22 15:07:37 +00:00
Sukesh Ram 90af684118 [CD Projected Mode] Make Taskbars for Detected displays on Boot when Connected
Make Taskbars for Detected displays on Boot when Connected.

Bug: 409820188
Flag: com.android.window.flags.enable_taskbar_connected_displays
Test: m
Change-Id: Iac04fe3c5ba8faac7383ed2953ddee99240ce016
2025-04-22 14:57:43 +00:00
samcackett 8b65ad809e Decouple actionsView disabled state from clearAllButton visibility
Prior to this change, actionsView buttons enabled / disabled state was
coupled to clearAllButton visibility, which was then coupled to scroll
state. Due to an issue where outdated scroll values caused incorrect
visibility calculations for the "clear all" button and consequently
disabled the overview actions, we remove this check.

Fix: 391276638
Flag: EXEMPT. Bugfix
Test: Manual & TaplTestsQuickstep
Change-Id: Ib313deb72e8f01125f15f62e7e9a4af307062060
2025-04-22 14:09:55 +01:00
Wen-chien Wang c496829044 Merge "pin-shortcut: Add tests to verify the behavior" into main 2025-04-22 03:56:09 -07:00
Alex Chau c027e0c9ad Merge "Fix extraWidth used to calculate visibleTaskData" into main 2025-04-22 03:43:19 -07:00
Alex Chau 076df25a4f Fix extraWidth used to calculate visibleTaskData
- getLastComputedGridTaskSize should be used to get the correct size for grid tasks

Fix: 406988799
Test: manual
Flag: com.android.launcher3.enable_grid_only_overview
Change-Id: I7b94e8e03dd7a463417c03e600636cffc3696fdb
2025-04-22 03:43:11 -07:00
Anushree Ganjam 77f22bf9cf Merge "Move StatsLogManager to Dagger" into main 2025-04-21 18:48:56 -07:00
Vinit Nayak e417533ecd Merge "Use SplitPosition instead of StagePosition in TaskViewSimulator" into main 2025-04-21 18:05:48 -07:00
Treehugger Robot 5643f452d5 Merge "Merging update and modify model callbacks" into main 2025-04-21 15:15:13 -07:00