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
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
- 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
* 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
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
- 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
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
- When onPrepareGestureEndAnimation is called, we already know the end target is Overview, loading thumbnail at this point ensure thumbanil is loaded throughout the transition
Fix: 407525135
Flag: com.android.launcher3.enable_grid_only_overview
Test: Home/app to Overview with gesture/3button
Change-Id: Ie91d3989654ff17df94704275523ca097f786293
- Keep TaskThumbnailViewDeprecated as-is
- Due to flag guarding and xml changes, added bottomright_snapshot id
- Remove redundant FrameLayout from task_header_view.xml and refactor
the view to handle alignment correctly
- Move feature flag logic to the state mapper
- Extract TaskThumbnailViewHeader logic and any related state out of
TaskThumbnailView and move to TaskContentView
- Use vertical LinearLayoutManager to hold the TaskThumbnailViewHeader
and TaskThumbnailView
- Rename TaskThumbnailViewHeader to TaskHeaderView. Rename xml and state
similarly
This reverts commit df6dc455a7.
This reverts commit 714370a9bfb2e53738b0cd9958acd6540d8d649c.
Reason for revert: Reland previously reverted CL's with fixes
Fix: 408971730
Fix: 397889146
Fix: 401469907
Fix: 402277471
Fix: 403826044
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: TaskUiStateMapperTest & TaskContentViewScreenshotTest & TaskThumbnailViewScreenshotTest & TaskHeaderViewScreenshotTest & SwitchBetweenSplitPairsGesturalNavPortrait
Change-Id: I01758447ad1194ebbeab748113621b42f3384db8
Also swap surface only when required.
Fix: 404647629
Fix: 408937692
Test: Manual. Enter/Exit overview from home/app
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: I1562ed11a14021565ec9b9560b7f0d7d2b1468c6
Snap last grid task to hide clear all during scrolls as well.
Fix: 389081467
Test: TaplTestsSplitscreen
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I153b3dcacdf634358416f0793804c1c4c099a993
- Makes sure view is removed and set to null
- Makes sure draglayer is visible before trying
to copy it to the snapshot. I wasn't able to repo
the ANR, so will need to keep an eye on it once we
re-enable the flag.
Test: open/close shade multiple times
trigger launcher recreate by toggling dark theme
no leak detected in AS
Fixes: 404331867
Bug: 408450275
Flag: com.android.launcher3.enable_taskbar_behind_shade
Change-Id: Ide375943214548b938953230e2140d4df23317df
1. Introduce a `groupTask` property to `TaskView` and let all the
`bind` functions take a type of `GroupTask` as the parameter
instead of a `Task`.
2. Then let `RecentsView.removeGroupTaskInternal` take the
`GroupTask` as the parameter instead of a `TaskView`.
3. Caches the `groupTask` before `removeGroupTaskInternal` then
we can avoid the corresponding `deskId` being set to invalid
on `removeViewInLayout` in the main thread, which might happen
before `removeGroupTaskInternal`.
Bug: 408032417
Test: m
Flag: EXEMPT refactor
Change-Id: I51c5b810eb63bc1267b90b915f90164f7ca3cba5
we simply fetch the icons at the same time we restore the previously show items.
Test: Manual
Bug: 407932962
Flag: EXEMPT bugfix
Change-Id: I83131ef034fe94583beee32aeeb3e908f07cfc6f
- Updated flags for both Alt+Tab on CD and KQS flatenning features.
Bug: 407954660
Test: m
Flag: EXEMPT only updated flag usage
Change-Id: If099138c65ae582837293c0929185f61e6f5f350