Commit Graph

83004 Commits

Author SHA1 Message Date
mpodolian 77859d0c89 Fixed issue with expanded view incorrect position.
The expanded view was misplaced due to a race condition. This occurred
because the BubbleBarController.onBubbleBarBoundsChanged() method was
invoked while
LauncherTaskbarUIController.onTaskbarInAppDisplayProgressUpdate() was in
progress (e.g. inAppDisplayOverrideProgress value was slightly higher
than 0). The latter method is also used to shift the three navigation
buttons for IME open/collapse events.

This concurrent execution led to an incorrect bubbleBarTranslationY
value being used in the BubbleBarView.getTopToScreenBottom() method,
ultimately causing the misplacement of the expanded view.

Fixes: 416158567
Flag: EXEMPT bugfix
Test: Manual.
- Long Press Chrome icon select "bubble" adds
- Press search bar inside Chrome app bubble to show IME
- Hide IME
- Press Chrome bubble
- Press search bar inside Chrome app bubble to show IME
- Hide IME

Change-Id: I44431f0eb47c3e9e0bea0274624e5b1db0aa15c9
2025-05-16 10:05:01 -07:00
Schneider Victor-Tulias cea90d45a6 Temporarily revert allowing recents view to reapply load state
Flag: EXEMPT bug forward fix
Bug: 417535264
Test: crystalball
Change-Id: I39bf36d2993a317d7d0566d622a8ce7bbcbf76b1
2025-05-16 12:39:31 -04:00
Shamali P f7441b88fc Dismiss widget picker activity on lock
See attached bug, we don't have good transition between lockscreen and
picker, so, we decided to dismiss it, given that this CUJ is less
common.

Additionally,

1. switch over to dagger dependencies instead of LauncherAppState
2. Remove unused flags for show_wallpaper / show_when_unlocked

Bug: 405068076
Flag: EXEMPT BUGFIX
Test: Manual (see demo in comments)
Change-Id: I8d0d5ebdbcca806e7fa24c57f80f1cad518bd035
2025-05-16 14:41:48 +00:00
Charlie Anderson 821440846f Merge "Update new filled shortcut icons to also be rounded" into main 2025-05-16 07:30:17 -07:00
Charlie Anderson 157da33ffc Merge "Add more logging for the options launcher returns to picker" into main 2025-05-16 07:27:42 -07:00
Alex Chau 557d8e6d7f Reland "Recreate Launcher activity when blur enabled changes"
- When battery saver changes, WallpaperThemeManager always recreate activity to reapply theme base on wallpaper color hint changes
- Battery saver change can also result in light/dark theme changes, for which WallpaperThemeManager also recreate activity to apply theme changes
- As a result, it'll be much simpler to recreate activity whenever isBlurEnabled changes
- Exposed recreateToUpdateTheme API from WallpaperThemeManager to achieved this
- Greatly simplified Overview styling to read from styles

Reland fix:
- Removed mBlursEnabled in BaseDepthController, and only use `mCrossWindowBlursEnabled` to control swapping between blur style and fallback style
- Temporary variables like `mPauseBlurs` and `hasOpaqueBg` should only affect if blurs are applied, but not result in swapping of blur style, otherwise this cause unnecessary redraw or activity recreate

Reason for revert: reland
Reverted changes: /q/submissionid:33581402-revert-33554447-b/414789280-CTVRJLPLRT
Bug: 414789280
Test: manually toggling battery saver and light/dark theme and WallpaperThemeManagerTest
Test: PressBackFromLaunchedApp.testPressBackFromLaunchedApp
Flag: EXEMPT bugfix

Change-Id: Iac2b0c00811e0e79684da0cf77df76a120c1272a
2025-05-16 12:33:44 +01:00
Sergey Pinkevich ab6d946622 Merge "Wrap calling RemoteRunnable with executeSafely" into main 2025-05-16 03:13:33 -07:00
Treehugger Robot 242f038d09 Merge "Don't trigger getRecentTasks() calls when waiting for an old call" into main 2025-05-16 02:25:05 -07:00
Andy Wickham d1a9660761 Do not animate background when launching from all apps or home.
I think this animation was broken, and my previous CL accidentally
fixed it, so that blur was actually applied during app launch. This
caused some app launch performance regressions, so we will at least
disable it whenever the All Apps blur flag is enabled.

Test: presubmit, forrest
Bug: 416476673
Flag: com.android.launcher3.all_apps_blur
Change-Id: I4c7001dc84f67dbef02fbc255613b94347df91b8
2025-05-16 01:20:33 -07:00
Treehugger Robot 71d9ca7af3 Merge "[PiP on Desktop] Disable swipe up PiP if task is freeform" into main 2025-05-15 23:10:44 -07:00
Matthew Mourgos b014754dc7 Merge "Stop mouse click+drag on home screen from opening notification shade" into main 2025-05-15 20:36:47 -07:00
Brandon Dayauon c182354074 Merge "Fix workUtilityView showing up before keyboard is up" into main 2025-05-15 20:13:31 -07:00
Federico 'Morg' Pareschi 49ee74932f launcher3: Add logcat event for launcher ready
This event helps us monitor via logcat when a login (after a screen unlock)
event ends.

Bug: 417839016
Test: manually unlock screen and verify the log shows up when ready
Change-Id: I051bf3d5e77b363bcfe37f995146a82e6db69a94
Flag: EXEMPT log only update
2025-05-16 02:45:22 +00:00
Treehugger Robot 6bc72676ed Merge "Recreate DP for CD when displayInfo changes" into main 2025-05-15 18:07:54 -07:00
Andy Wickham d4100bec42 Fix All Apps interpolators and blur.
Fixes an issue where leaving All Apps did not reverse interpolators,
causing blur to disappear too quickly.

In addition, the logic in BaseDepthController is updated to ensure
100% blur is applied upon reaching max depth. Previously we were
multiplying the depth by 3, but the intention was to reach 1 when
depth reached 0.3. So the blur was only at 90% the intended value in
All Apps (which has a depth of 0.3).

Finally, related to the 100% blur, we correctly end early wakeup
when that is reached, which means we also start it again when the
blur starts changing back towards 0 again. This spins up the GPU,
CPU, and SurfaceFlinger and should help avoid missed frames.

In order to avoid negative performance hits, reducing the max blur
radius from 34dp to 30dp, so that it matches what we were hitting
previously. (The full 34dp unfortunately does cause some regressions).

Bug: 415247657
Test: Open all apps, drag back down, view animation. Also try other
Launcher state transitions.
Flag: com.android.launcher3.all_apps_blur
Change-Id: Ia5daa07525ac96c0597a25bb4320348f27a4ee56
2025-05-15 17:53:17 -07:00
Treehugger Robot bee486a7da Merge "Use desktop mode autostashing on desktop devices" into main 2025-05-15 17:33:29 -07:00
Brandon Dayauon d2bf99e068 Fix workUtilityView showing up before keyboard is up
The reason is that there is extra translation applied to account for the all apps moving. Rather we should only offset any translation when -windowInsets.bottom < 0.

bug: 416323265
Test: videos in bug
Flag: EXEMPT bug fix
Change-Id: I3565d3a2ee09f545c0d01aa0ce3da8f80a017308
2025-05-15 16:14:27 -07:00
Andy Wickham db3e5ac901 Merge "Update All Apps handle and work tab color." into main 2025-05-15 16:06:30 -07:00
Ajinkya Chalke 1fd6090eb7 Recreate DP for CD when displayInfo changes
- Only IDP is updated when displayInfo changes but DPs of CD don't. As
  a result taskbars on CD end up reusing the old config DPs. For
  example, when user changes display size, displayInfo updates but
  taskbars on CD continue using old DP resources.
- So, update DP for CD when DisplayInfo changes.
- Also added using supplied context with dpToPx for calculating radius
  for taskbar roundedness at the ends.

Fix: 414933860
Test: m
Flag: com.android.window.flags.enable_taskbar_connected_displays

Change-Id: I7d8ed3c5ba69b755a58d3462a5da9ed7fd404198
2025-05-15 22:42:09 +00:00
Vadim Tryshev 3743ca97c7 Skip all tests after a test times out
That test can continue running in the "Time-limited test" thread,
and we don't know whether it makes sense to wait for its completion.

Flag: EXEMPT test fix
Fixes: 405849365
Test: TAPL tests; pre/postsubmit
Change-Id: I3bdd6e5b07f109124f938766b7f2e427d2e39b01
2025-05-15 13:44:40 -07:00
Gustav Sennton ffa5c2ad83 Don't trigger getRecentTasks() calls when waiting for an old call
TaskbarRecentAppsController#reloadRecentTasksIfNeeded() triggers a call
to fetch Recents tasks, that call is expensive as it goes through WM
Shell and the system server. If we trigger reloadRecentTasksIfNeeded()
multiple times we're queueing up multiple calls to fetch Recents tasks.

With this CL we avoid queueing up multiple calls, and instead just make
one new call when the old one finishes. That way we can only ever have
one call getRecentTasks() call triggered through
reloadRecentTasksIfNeeded() posted at any one time.

Bug: 415090968
Flag: com.android.window.flags.enable_taskbar_recent_tasks_throttle_bugfix
Test: TaskbarRecentAppsControllerTest
Change-Id: I58b66e4564af4e64837317a9de7be398395d8568
2025-05-15 20:18:21 +00:00
Treehugger Robot 06483e2faa Merge "Clean up Recents window for connected displays when the screen is off" into main 2025-05-15 13:13:46 -07:00
Alex Chau 38efd382b7 Merge "Revert "Recreate Launcher activity when blur enabled changes"" into main 2025-05-15 13:07:22 -07:00
Sunny Goyal 1d4a457680 Merge "Adding repository for AppsList data" into main 2025-05-15 12:23:44 -07:00
Charlie Anderson cd4382aa43 Add more logging for the options launcher returns to picker
Bug: 413707700
Test: N/A just logs
Flag: EXEMPT just logs

Change-Id: I2377a6bcf7fa8d219fec784570ff92eface1118e
2025-05-15 12:21:40 -07:00
Catherine Liang 00dbb434dd Fix incorrect widget layout when previewing grid
When previewing grid, actual widgets are updated. Revert grid changes
when preview binder dies to restore original widget layout in Launcher.

Flag: com.android.systemui.shared.new_customization_picker_ui
Bug: 408934352
Test: manually verified
Change-Id: I18f63fd1760b1188306defd2a8315fe5765dab01
2025-05-15 18:43:27 +00:00
Priyanka Advani (xWF) 1f891a6b67 Revert "Recreate Launcher activity when blur enabled changes"
Revert submission 33554447-b/414789280

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

Fix: 417614196

Reverted changes: /q/submissionid:33554447-b/414789280

Change-Id: Idf349cd39a3f86910f597f0f9ab4d46fb03e945c
2025-05-15 11:12:05 -07:00
Steven Ng 5447e27488 Clean up Recents window for connected displays when the screen is off
Root clause: In connected displays, the recents windows are rendered in a separated window instead of in Launcher / QuickStepLauncher. And thus, Launcher#onScreenOnChanged doesn't clean up the recents windows upon screen off.

This CL also updates RecentsState#toString to make it easier to differentiate RecentsState from LauncherState in the logs.

Flag: com.android.launcher3.enable_overview_on_connected_displays
Test: Manually verified that the recents windows UI shown on a connected display is cleaned up after screen
Bug: 415040428
Change-Id: Iac602237943f341f1ce46d651c5b98003f3914c9
2025-05-15 10:31:32 -07:00
Surbhi Kadam 550dbb0021 Merge "Launcher3: send token with early wakeup request to SurfaceFlinger" into main 2025-05-15 10:28:36 -07:00
Sergey Pinkevich 542a174141 Wrap calling RemoteRunnable with executeSafely
Bug: 417347351
Flag: EXEMPT wrapping the call with try/catch, no flag needed
Test: NA wrapping the call with try/catch, no test needed

Change-Id: I65725697593530d33282f5cdd8d150a80152ab6a
2025-05-15 17:14:15 +00:00
Ebru Kurnaz 6ddc86dc7e Merge "Use wm callbacks for sys decor in Launcher instead of command queue." into main 2025-05-15 09:44:19 -07:00
Mykola Podolian 4703fef886 Merge "Reset -1 page progress when leaving it" into main 2025-05-15 09:37:10 -07:00
Jordan Silva 17b5284033 Merge "Clean-up TaskViewIcon to remove duplicated View methods." into main 2025-05-15 08:40:00 -07:00
Sebastián Franco 50c607d4d4 Merge "launcher: Get rid of redundant folders like testing when we have the test folder" into main 2025-05-15 08:29:45 -07:00
Tony Wickham cb535f5330 Merge "Call updateOverivewDragState when mIsAnimatingToLauncher changes" into main 2025-05-15 08:11:56 -07:00
Sam Cackett 86957d29bc Merge "Switch to screenshot before animating split select" into main 2025-05-15 07:30:28 -07:00
Ebru Kurnaz 88185ac745 Use wm callbacks for sys decor in Launcher instead of command queue.
Bug: 412615955
Test: DisplayRepositoryTest
Flag: com.android.window.flags.enable_sys_decors_callbacks_via_wm
Change-Id: I42865b2b9169e99e35e09e239f6a1b3e455b7894
2025-05-15 13:39:33 +00:00
Alex Chau 6564f33184 Merge "Remove debug logs on a closed bug" into main 2025-05-15 06:37:49 -07:00
Alex Chau b7dd7bf1e0 Merge "Recreate Launcher activity when blur enabled changes" into main 2025-05-15 06:07:58 -07:00
Jordan Silva 18885ee426 Clean-up TaskViewIcon to remove duplicated View methods.
This change simplifies the TaskViewIcon interface by inheriting directly from View, removing redundant method declarations like `getWidth()`, `getHeight()`, `setOnClickListener()`, etc.

Affected classes are updated to use the new interface, primarily by calling `asView()` to access the underlying View methods where necessary.

Bug: 415265678
Flag: com.android.launcher3.enable_overview_icon_menu
Test: Manual.
Change-Id: I281f495116a841338075d0ff35effd19316aaeec
2025-05-15 13:07:00 +01:00
Sam Cackett 7ab01c539e Switch to screenshot before animating split select
Fixes an issue where the live tile would flicker and briefly show the
background, then switch to screenshot and animate

Fix: 399847132
Flag: EXEMPT. Bugfix
Test: Manual. See bug
Change-Id: I373e052f32af1b7fade4cce509c820d29deafe97
2025-05-15 12:07:53 +01:00
Treehugger Robot a098f6a855 Merge "Update the color of icon for addDesktopButton" into main 2025-05-14 22:49:38 -07:00
Sunny Goyal 869b20cb27 Adding repository for AppsList data
Flag: com.android.launcher3.model_repository
Test: atest AppsListRepositoryTest
Bug: 390572144
Change-Id: I6e5993c91f77ed8f0b6f2c12c9d743c87a497134
2025-05-14 21:19:18 -07:00
Treehugger Robot 42aaacc11f Merge "Do not expect a desktop task has action views" into main 2025-05-14 19:11:34 -07:00
Treehugger Robot 6bcd5d93de Merge "launcher3: Add error handling for drag preview bitmap creation." into main 2025-05-14 19:02:50 -07:00
Brandon Dayauon 11388a53f4 Merge "Make hotseatQsbShadowHeight public" into main 2025-05-14 17:48:57 -07:00
Mykola Podolian 12d5eae670 Merge "Clear bubble bar saved states if bubble bar controllers not present." into main 2025-05-14 17:38:07 -07:00
mpodolian dbd42b6f05 [1/5] Added DragToBubbleController
Added controller that would handles drags of launcher icons to the
bubble bar, displaying drop targets and creating application bubbles.

Bug: 411506181
Flag: com.android.wm.shell.enable_create_any_bubble
Test: build launcher
Change-Id: I593222d86f50248ceb2909ae73ccc021ef515e28
2025-05-14 17:29:11 -07:00
Merissa Mitchell 3f52f3fab5 [PiP on Desktop] Disable swipe up PiP if task is freeform
Bug: 416766306
Test: atest WMShellUnitTests:com.android.wm.shell.pip2.phone
Test: Manual - swipe up after tiling YT with video playing in Desktop,
verify PiP is not entered and there is no crash
Flag: com.android.window.flags.enable_desktop_windowing_pip

Change-Id: Ib8b1fc3979c7e2151e7c7184499334501503afb4
2025-05-14 17:27:43 -07:00
mpodolian ae8047b5c3 Reset -1 page progress when leaving it
Reset in-app display override progress when transitioning from home -1
page. In order to come back to the -1 page user has to swipe left from
home again so in-app display override progress will be updated again.

Fixes: 416163737
Flag: EXEMPT - bugfix
Test: Manual. enable 3 buttons navigation mode. Have bubble bar with
bubbles. Swipe to -1 page. Click recent apps button. Click home.

Change-Id: Ibc67f6e024f5c89efb7f80f420fc859aaa9d3e33
2025-05-14 17:16:28 -07:00