It is now injected via a factory so a new instance is used each time.
Bug: 399641570
Flag: EXEMPT BUGFIX
Test: Unit test
Change-Id: Iee703f0c954c95599c07ceb788edabb0d808abb2
- Avoid zooming in RecentsView in Select mode, instead zoom in the selected TaskView only to avoid changing RecentsView's scale and pivot, otherwise when doing home gesture in Select mode RecentseView zoom will be distorted
- Set taskModalness on all TaskViews, so they can fade out while entering Select mode, this avoid janky transitionig of non-selected TaskView appearing during hoem gesture
- Keep overviewGridEnabled true until transitioning out of a RecentsView visible state, so showAsGrid() remains true and the Overview grid won't deform midway through animating
- When leaving Select mode to RecentsView invisible state (e.g. Home), leave taskModalness 1 until the last frame so selected TaskView remains zoomed in until RecentsView is invisible
Fix: 322818393
Test: OverviewTaskSelectImageTest
Test: Repeat with combination of default/fallback, live/static tile, handheld/tablet
1) Swipe up from Overview
2) Swipe up from Select to go Home
3) Backc/cross button to exit Select to Overview
Flag: com.android.launcher3.enable_grid_only_overview
Change-Id: I8fec62315cbd404502852654772edb1d695f1ec6
To ensure consistent, controllable Taskbar in Connected Displays Behavior, move all independent calls to the singleton DisplayController's various methods into one place in BaseTaskbarContext, where we have access to the parent context and can override default behaviors of these methods throughout taskbar if in external display.
Flag: EXEMPT not adding new behavior
Bug: 401553128
Test: m
Change-Id: If9efc0cfc18bac3ee75bb64bf5280ea979d1faa2
When we get the sysui flag for shade expanding, take a
snapshot of the TaskbarDragLayer (after hiding three navigation
buttons), and add a View of that snapshot to the TaskbarOverlay
layer, while simultaneously hiding the real Taskbar.
Bug: 343194358
Test: have pinned taskbar, open shade, note taskbar stays behind shade
Flag: com.android.launcher3.enable_taskbar_behind_shade
Change-Id: I0ad9506f34dd4f3aec3796d94cd3d4a914ff67e5
This would allow customizing the widget holder in LauncherPreview
Bug: 361850561
Test: Updated tests and presubmit
Flag: EXEMPT dagger
Change-Id: I32491169188992453693048986c57cb780fdf1d8
- Had to bump elevation of drop target so need to bumpe elevation
of dragged views
Flag: com.android.wm.shell.enable_bubble_anything
Test: manual / visual - drag a bubble or drag expanded view and observe
the drop targets
Bug: 403276099
Change-Id: I15a1deb055c590b1f46261fcc307120fcb685c08
The SetFlagsRule was missing in tests.
Flag: EXEMPT Test fix
Fix: 402452969
Test: atest NexusLauncherTests:com.android.quickstep.DesktopSystemShortcutTest
Change-Id: I80e4fc311b173e32e2d85849656b837deb903aeb
1. Trigger `notifyIsInDesktopModeChanged` on
`visibleDesktopTasksCount` changes only when the multi-desks
flags are disabled.
2. Make `DesktopVisibilityController.isInDesktopMode` variable
private and legacy, which should only be used when the multi-desks
feature is disabled. All the call sites should go to check
`DesktopVisibilityController.isInDesktopMode(displayId)`, which
works both with and without the multi-desks feature enabled.
Bug: 402222877
Test: m
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Change-Id: I291e2be6d99e81b0c918ae7f39c17a8cd4ea0918
Due to b/403118101, add temproray null intent check to prevent tests
from failing for longer until we identify why there is task with bunch
of null fields.
Bug: 403118101
Flag: EXEMPT Bug fix
Test: m
Change-Id: I11246c1143d1acbe45133f0e34785818bce3dba9
This CL changes how the layoutDirection of the App Chip is handled and update translations in the PagedViewHandler for the app chip for fake orientation.
- The App Chip was updated to use the device layoutDirection instead of the same of RecentsView. This prevents the app chip being displayed in RTL when the device is LTR and vice-versa.
- It also applies the correct layout direction to `IconAppChipView` and its related views to ensure proper RTL behavior.
- RecentsView now updates layoutDirection for its children when updateChildTaskOrientation is called. This will make sure its children have the the latest and the correct layoutDirection.. Before it was only applied when adding a view (addView).
- In `SeascapePagedViewHandler`, it adjust the gravity for app chip be aligned correctly in Seascape.
- In `GroupedTaskView`, it checks if the device is in RTL to align the app chip correctly for split tasks.
- Multiple test combinations were done to validate this fix, please see table in b/326377497#comment7.
Fix: 326377497
Bug: 403284758
Flag: com.android.launcher3.enable_overview_icon_menu
Test: Manual, please check b/326377497#comment7.
Test: OverviewImageTest
Test: OverviewSplitTaskImageTest
Change-Id: I8e8050ccf58c3f90718a48773ee7e32ddbc00f13
The padding values were set to their totals.
They needed to be halved.
Bug: 397975686
Flag: com.android.launcher3.taskbar_overflow
Test: None
Change-Id: Icae56e02fa6082b7f99b9fef265d6220b613d06b
Fixes: 378516887
Flag: com.android.wm.shell.enable_bubble_bar
Test: Manual. Have bubble bar with some bubbles. Connect the PC monitor
to the prepared android device.Observe bubble bar only appears on the
android device screen.
Change-Id: I9188bf9f3a74c8699c213bb7fbf886b92afeb746
When all windows on external taskbar are closed, exit desktop mode is trigggered. We stop this signal from destroying the external taskbar. This is because we want to be in desktop mode as long as we are connected to a non-mirroring display.
Flag: com.android.window.flags.enable_taskbar_connected_displays
Bug: 401553128
Test: m
Change-Id: I23b61172bb13f1377c4532a56e7838fbe2140f20
This is the fix on Launcher side. There is a counterpart on
SystemUI side.
PictureInPictureParams#isSameAspectRatio has 1-pixel allowance when
comparing a given Rect against the aspect ratio.
When we compare the source rect hint against the aspect ratio inferred
from the destination bounds, the float error during the destination
bounds calculation is amped. For instance:
- Source rect hint: Rect(152, 0 - 2072, 1080), 1920x1080
- Destination bounds: Rect(440, 1218 - 1038, 1554), 598x336
When do the isSameAspectRatio
- If we fix the height=1080, expected width=1922, it's 2 pixels off
- If we fix the width=1920, expected height=1078, it's 2 pixels off
The check would fail. Instead, in this change, we compare the
destination bounds against the aspect ratio from the source rect hint.
For the same source rect hint and destination bounds
- If we fix the height=336, expected width=597, it's 1 pixel off
- If we fix the width=598, expect height=336, it's 0 pixel off
Note: this change applies to both PiP1 and PiP2
Flag: EXEMPT bugfix
Bug: 402190788
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/cUXaoJxzXDdKdSyqkQZOG1
Test: Swipe to enter PiP from landscape playback, see also Video
Change-Id: I8f06f269784c72258f9b23f2beafbd5d0926bb73
Bug: 401011627
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Test: Added a test in RecentTasksListTest
Change-Id: I21164de812d57b79cd84370bbf0426268c4b645d