Commit Graph

83004 Commits

Author SHA1 Message Date
Treehugger Robot 5a04fbb274 Merge "Use concurrent list to prevent ConcurrentModificationException" into main 2025-04-14 02:12:35 -07:00
Roy Chou 53086598a6 cleanup(magnification): remove flag remove_exclude_from_screen_magnification_flag_usage
Bug: 409604377
Flag: EXEMPT cleanup
Test: build pass
Change-Id: I43ece08e3a12ddc5a52738772a3f6225eff52236
2025-04-14 08:40:31 +00:00
Alex Chau 2c2088ed87 Migrate RecentsDisplayModel to PerDisplayRepository
- RecentsWindowManager/FallbackWindowInterface should be accessed through the respecitve REPOSITORY_INSTANCE or through Dagger
- RecentsDisplayModel is no longer needed as PerDisplayRepository manages lifecycle of all per-display objects

Fix: 410224937
Test: manual and presubmit
Flag: EXEMPT refactor
Change-Id: Iddfddbdcbe15be5075c038d98d02aa79ab55117b
2025-04-12 22:05:38 +01:00
Treehugger Robot d19d21fea0 Merge "Trigger taskbar state changes onActiveDeskChanged" into main 2025-04-11 20:08:54 -07:00
Treehugger Robot 1e5e03d74d Merge "Remove flag ComAndroidLauncher3EnableUnfoldedTwoPanePickerLaunch" into main 2025-04-11 18:06:26 -07:00
Uwais Ashraf 4dc3313044 Use concurrent list to prevent ConcurrentModificationException
TasksRepository.setVisibleTasks can add/remove listeners while HighResLoadingState.updateState iterates over them.

Bug: 408978565
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: SwitchBackToSplitFromRecentGesturalNavLandscape#switchBackToSplitFromRecent
Test: Manual - made exception extremely likely by constantly adding/removing listeners. Could easily repro exceptions, then added this CL and could no longer repro.
Change-Id: Ic04717527fcbdb9301a6e313f9e666e2f5135b3e
2025-04-12 00:40:18 +00:00
minch 9381184f58 Trigger taskbar state changes onActiveDeskChanged
1. Add [DisplayDeskConfig] when `onDeskAdded` if there is no config yet.
   As the display might start without any desks.
2. Trigger the task bar enter or exit on desktop mode changes inside
   `onActiveDeskChanged` instead, which is also transition based.

Bug: 408060477
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: I6f77f2a8d9fe660175b739f44dc241937a6bcc7a
2025-04-12 00:24:51 +00:00
Treehugger Robot 0aabd48612 Merge "Fix Entry Animation Indicator Alpha" into main 2025-04-11 17:22:29 -07:00
Treehugger Robot 08a65bfd06 Merge "Use shell's SplitBounds class instead of our own" into main 2025-04-11 17:16:27 -07:00
Brandon Dayauon b570514ee0 Merge "Add nudgeView to Taskbar.xml" into main 2025-04-11 16:28:59 -07:00
Stefan Andonian 71170e9276 Implement Folder Pagination Arrow Hover / Pressed UX
Bug: 394355070
Test: Verified locally that everything works. Check out bug for video test.
Flag: com.android.launcher3.enable_launcher_visual_refresh
Change-Id: Ief4b895d8eb31e6ed53b05aad4b733e8de41e4d9
2025-04-11 16:02:04 -07:00
Stefan Andonian c547affdc9 Moved PageIndicatorDots to their own ImageViews.
Previously, they were simply included in PageIndicatorDots via Canvas
drawing. This worked well to keep behavior encapsulated within
PageIndicatorDots class. But it didn't work for Accessibility Services
which require an actual view in order to focus properly.

Bug: 409629978
Test: Verified manually. See video on bug comment: https://b.corp.google.com/issues/394355070#comment23
Flag: com.android.launcher3.enable_launcher_visual_refresh
Change-Id: I212bf3dbee82e449088536fa841b02a3644df7d3
2025-04-11 16:00:12 -07:00
Federico Baron d11aa358c3 Remove flag ComAndroidLauncher3EnableUnfoldedTwoPanePickerLaunch
Flag: EXEMPT internal cleanup
Test: EXEMPT internal cleanup
Bug: 409604800
Change-Id: Id67bcd7af442e19eff4ef65f3135b83124e4098f
2025-04-11 22:01:49 +00:00
Sebastián Franco efae5662e8 Merge "When dragging make the content of the drag layer not accessible but keep the drag View accessible" into main 2025-04-11 14:55:08 -07:00
Sebastian Franco 04b0a4a0d8 Use correct container for predictive icons
Fix: 408280336
Test: Manual Testing
Flag: EXEMPT Bug Fix
Change-Id: I20432ee13247bd4dbd089fc936476333900150e6
2025-04-11 14:51:29 -07:00
Stefan Andonian 37df1e3238 Fix Entry Animation Indicator Alpha
Bug: 394355070
Test: Verified indicator alpha locally. See screen recording on https://b.corp.google.com/issues/394355070#comment25
Flag: EXEMPT bug fix
Change-Id: Idfba3916136c579bbc2b25b566e8761bed24f939
2025-04-11 14:35:25 -07:00
Charlie Anderson b71758624a update folder anim for new folder specs and spring animation
- Refactors FolderAnimationManager into several classes including new FolderSpringBuilderAnimationManager
- Changes Folder animations to use animators resembling SpringAnimation
- Split up calculations from creating AnimatorSet

Bug: 387543793
Test: tested opening closing folders of different sizes
Flag: com.android.launcher3.enable_launcher_icon_shapes
Flag: com.android.launcher3.enable_expressive_folder_expansion
Change-Id: Idf1f21374f987389979ad45544ade1506b26fc0c
2025-04-11 13:57:38 -07:00
Sunny Goyal 040ff3a7bf Adding HomeScreenRepo to expose homescreen data as repository
Bug: 390572144
Test: Presubmit
Flag: com.android.launcher3.model_repository
Change-Id: If82a388a44d7a9c448f6eb4901c2acdb508ccfdc
2025-04-11 13:28:08 -07:00
Brandon Dayauon 1fc6f916d3 Add nudgeView to Taskbar.xml
Aiai will send a broadcast to Launcher and will animate the stashHandleView and nudgeView accordingly.
Verified on large screen device that transient taskbar is not affected as its not in scope at the moment.

bug:409121556
Test: manual - video in bug
Flag: com.android.launcher3.nudge_pill

Change-Id: I740e5d81dd008a230aa089f311d38bac665fc227
2025-04-11 13:24:22 -07:00
Alex Chau 45f4721a6e Merge "Clean-up enable_separate_external_display_tasks" into main 2025-04-11 10:12:48 -07:00
Schneider Victor-tulias ec8841a926 Merge "Clean up fully rolled out flag enable_desktop_task_alpha_animation" into main 2025-04-11 07:36:27 -07:00
Schneider Victor-tulias 34fcfddaa2 Merge "Clean up fully rolled out flag enable_handle_delayed_gesture_callbacks" into main 2025-04-11 07:36:12 -07:00
Schneider Victor-tulias 69dc582a4e Merge "Clean up fully rolled out flag enable_active_gesture_proto_log" into main 2025-04-11 07:35:12 -07:00
Alex Chau 60595d7037 Clean-up enable_separate_external_display_tasks
Fix: 409611251
Test: manual
Flag: EXEMPT flag removal
Change-Id: Ib0ab4f6d994ba30d68f3a31d88b4f681e8e9d718
2025-04-11 14:25:38 +01:00
Alex Chau eee45c8dfd Merge "Mark all PerDisplayRepository as LauncherAppSingleton" into main 2025-04-11 04:42:11 -07:00
Alex Chau 3f314e5a07 Mark all PerDisplayRepository as LauncherAppSingleton
- Without this annotation, everytime the PerDisplayRepository is requested, a new PerDisplayRepository is created effectively not functioning as a repositroy.
- This caused RotationTouchHelper to be created whenever get() is called, thus losing its state across the swipe gesture

Fix: 409722063
Fix: 409258907
Test: manual
Flag: EXEMPT bug fix
Change-Id: Ibde4c6ce18b96bafea1c40d8c69a4552f371501a
2025-04-11 02:33:38 -07:00
Sergey Pinkevich 9bddbabc73 Merge "Relax condition for the OPEN change to be on top of transition" into main 2025-04-11 02:17:22 -07:00
Sebastian Franco 2ff9ebce8e When dragging make the content of the drag layer not accessible but keep the drag View accessible
Continuation of change I842415f689c992f64d863743f019455701da22e9

Fix: 392872410
Bug: 374642145
Bug: 374656225
Bug: 374658319
Test: manual
Flag: EXEMPT bugfix
Change-Id: I282f1f6ca30e10c5aef6947feee9b10514e286a6
2025-04-10 17:18:13 -07:00
Jon Miranda a5505327dd Only enable taskbar snapshot if taskbar is present.
Bug: 343194358
Bug: 409795053
Test: testDragDownNotificationShade
Flag: com.android.launcher3.enable_taskbar_behind_shade
Change-Id: I62f9cb2e5acde57cee866fc3dda21e4a709714be
2025-04-10 15:42:40 -07:00
mpodolian d3c7eed166 Maximised the taskbar window to the default size
TaskbarViewController set window height to the too low value, so bubble
bar was not visible in 3 - buttons navigation mode on foldable device.

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: I516eab4121c39fc2bec5e49cc3c9b0ad8e640f8b
2025-04-10 14:56:37 -07:00
Vinit Nayak fdcfb61f1b Use shell's SplitBounds class instead of our own
* Previously we had duplicated classes because of some
launcher3 and quickstep package separation. That got refactored
so now we can conslidate to only use one class. Yay!

Bug: 254378592
Test: Compiles, manual
Flag: EXEMPT refactor

Change-Id: Ifea3358ac38c1d2881cb19bb88cf14ef9c0aaa29
2025-04-10 15:18:24 -04:00
Schneider Victor-Tulias 67a1a3646c Clean up fully rolled out flag enable_handle_delayed_gesture_callbacks
Flag: EXEMPT removing flag
Bug: 409605707
Test: None; flag is already fully rolled out
Change-Id: I06adfa8e0b88c14854fd80b1ccdcd6406c2cf2e9
2025-04-10 11:12:28 -07:00
Schneider Victor-Tulias 21744a7b01 Clean up fully rolled out flag enable_active_gesture_proto_log
Flag: EXEMPT removing flag
Bug: 409609863
Test: None; flag is already fully rolled out
Change-Id: I9ab72733d18944f25c7593415abb5964794d7f05
2025-04-10 11:12:15 -07:00
Schneider Victor-Tulias a1366e3531 Clean up fully rolled out flag enable_desktop_task_alpha_animation
Flag: EXEMPT removing flag
Bug: 409605077
Test: None; flag is already fully rolled out
Change-Id: I92c8520ce1f924104453be7e969bd6095d612717
2025-04-10 11:11:58 -07:00
Sebastian Franco ef2be673a0 Make hotseat icons match with Workspace in Fixed Landscape
Bug: 409784022
Test: Screenshot tests
Test: DumptTest
Flag: EXEMPT bug fix
Change-Id: I12b9699b1dc9ba597511be8e929cc8cf1bde7756
2025-04-10 10:33:06 -07:00
Schneider Victor-Tulias dbf9dee5a6 Fix broken recents view loading with overview in window enabled
If recents view is not attached to window when applyLoadPlan is called, then the taskviews will never update until mTaskListChangeId is invalidated. This mainly affects RecentsWindowManager, so added a callback to only initialize after recents view has attached to window.

Flag: com.android.launcher3.enable_launcher_overview_in_window
Bug: 377678992
Test: pre/post-submit tests; opened overview several times
Change-Id: Ie430fb5b0b2b6870c12fed1c6a394088cad1ac17
2025-04-10 09:58:21 -07:00
Treehugger Robot a2b5b589dc Merge "Register all apps key gesture event in quickstep launcher" into main 2025-04-10 09:57:21 -07:00
Stefan Andonian ba797e5454 Merge "Perform Snap animation in Folder PageIndicatorDots" into main 2025-04-10 09:37:35 -07:00
Treehugger Robot 09357adb4e Merge "Update taskbar flags to use DesktopExperienceFlag" into main 2025-04-10 09:25:23 -07:00
Alex Chau 2e7ef70770 Use AplicationContext for getWindowCornerRadius on DEFAULT_DISPLAY
- ag/32861507 changed getWindowCornerRadius to use DisplayContext, which does not get updated on configuartion changes, this caused potentially regression of having wrong corner radius after configuration changes
- ag/32896744  attempted to fix this with window context, get is rolled back due to perfroamcne regression
- This CL is a temp fix to make DEFAULT_DISPLAY continue usign AplicationContext for getWindowCornerRadius, if the AplicationContext is associated to a display, and otherwise fallback to displayContext

Bug: 408988616
Test: manual
Flag: EXEMPT bug fix
Change-Id: I72dbcfb7cd6cdc6783e96768b4f4b51b76d9a245
2025-04-10 16:10:12 +01:00
Alex Chau 5e619cd675 Merge "Provides displayContext instead of windowContext for RotationTouchHelper" into main 2025-04-10 07:39:15 -07:00
Alex Chau e246b3273b Provides displayContext instead of windowContext for RotationTouchHelper
- Also limit usage of displayContext on getWindowCornerRadius only, any other usage causes perf regression
- Note that displayContext does not respond to configuration changes, there might be existing functionality bug already that resources are stale after configuration changes, keeping b/408988616 open to handle it in the future

Bug: 408988616
Fix: 409222870
Fix: 409252967
Test: presubmit and ABTD
Flag: EXEMPT refactor
Change-Id: I024c76326a2deb1ecc035de8319976e31887486b
2025-04-10 07:38:55 -07:00
Steven Ng 28d37181eb Register all apps key gesture event in quickstep launcher
Bug: 406452076
Test: atest NexusLauncherTests:QuickstepKeyGestureEventsHandlerTest
Test: atest NexusLauncherTests:AllAppsActionManagerTest
Test: atest NexusLauncherOutOfProcTests:com.google.android.apps.nexuslauncher.TaplTestsNexus
Test: Verfiy manually that meta key event triggered all apps if the display focused is the default display.
Flag: com.android.window.flags.enable_key_gesture_handler_for_recents
Change-Id: I654cdf527670fddc0bd6eb4d8cab18a9e1206ec1
2025-04-10 15:14:09 +01:00
Treehugger Robot c20a68eb4b Merge "Remove EnableHoverOfChildElementsInTaskview flag" into main 2025-04-10 06:30:38 -07:00
samcackett 68a21ed111 Remove EnableHoverOfChildElementsInTaskview flag
Fix: 409610713
Flag: EXEMPT. Flag removal
Test: N/A
Change-Id: Ifa924cb2011bb6e633ee5b79c17601be82b4a779
2025-04-10 10:59:54 +01:00
Uwais Ashraf 1fdb1dcbc0 Remove enable_use_top_visible_activity_for_exclude_from_recent_task flag
Fix: 409605610
Test: EXEMPT flag change
Flag: EXEMPT flag removal
Change-Id: I8459a4bc3345652f3b07e5dea97209e250e4f9b8
2025-04-10 02:32:12 -07:00
Sam Cackett bf69d6e6a5 Merge "Add TaskContentView wrapper to TaskThumbnailView" into main 2025-04-09 23:54:40 -07:00
Ajinkya Chalke c19475ceef Update taskbar flags to use DesktopExperienceFlag
- Had previously incorrectly used DesktopModeFlags instead.

Bug: 407954660
Test: m
Flag: EXEMPT updating flags
Change-Id: Id486dfecdb97e70a7ee497b2076ddda1f7355b7d
2025-04-10 05:26:31 +00:00
Stefan Andonian ff336edb06 Perform Snap animation in Folder PageIndicatorDots
Previously snapToPageImmediately was used, but that was the wrong method.

Bug: 408227356
Test: Verified that the animation runs well locally on device.
Flag: com.android.launcher3.enable_launcher_visual_refresh
Change-Id: Iedee458e61de2d3542137615d3ff86cb42bdfb02
2025-04-09 16:39:36 -07:00
Treehugger Robot b0d0d41a2a Merge "Use setLaunchedFromA11y when All Apps is launched from HomeScreen Menu." into main 2025-04-09 15:30:41 -07:00