This logging helps understanding what's going on in Launcher main thread
during unfold from perfetto traces.
Test: Perfetto trace after unfolding
Bug: 292472402
Change-Id: I7a037d9a129deb4bfe4310fdba664b87164ef2ca
* WM checks that the number of insets don't change for
a given window once it's added. Previously when we changed
nav modes the window was removed and a new one was added, so
changing insets amounts/types didn't matter.
* Now that we use the same window and re-provide the insets,
the number of them provided have to match (insets values themselves
can change as much as needed)
* Fix minor bug when checking bit mask for gravity
Test: Switch between nav modes, no crash; no change in behavior
w/ flag turned off
Bug: 274517647
Flag: persist.wm.debug.hide_navbar_window
Change-Id: I750f843e8210ba1c800b61ac79664265924c054a
Change-Id: Idba4e8e1888fa58bf872c04cb042f77a8b5b0573
Desktop task snapshots are shown inside the desktop tile in overview.
They use the window corner radius, when shown on the desktop. Keep the
same radius for the snapshots in overview. Only the desktop tile
background should use the task corner radius.
Bug: 280827930
Flag: persist.wm.debug.desktop_mode_2
Test: open some apps on desktop, swipe up for overview, observe the
desktop task corner radius remains the same as when on desktop
Change-Id: I55ced9f704b83a6c7619508aa3e7a8080ccc5c35
Subclasses can add more animations to the set to animate other
components in sync with themselves.
Test: Manual
Bug: 289290185
Flag: No
Change-Id: I96d9afe166e243bb0d2a9cecb8158e2e7d431a6c
Tapping on navbar handle was hiding the stashed taskbar handle.
When tappin on navbar handle, it starts the recents animation. Which
gets cancelled. Normally, the fullscreen app being visible, it means
launcher activity will be paused after. But when on desktop, launcher is
visible in the background and we need to manually set it to paused
state.
When recents gesture is cancelled after navbar handle tap, the gesture
end state is null. Detect this in DesktopVisibiltyController and mark
launcher as paused in this case.
Bug: 286140120
Flag: persist.wm.debug.desktop_mode_2
Test: open an app on desktop, tap on navbar, observe that user remains
on desktop
Change-Id: Iee915026265721d42a0b722d6b1595521f20a59a
A single bubble and the bubble stack dismiss functionality is implemented using `BubbleDragController`. It attaches a touch listener to the corresponding views and handles gesture interactions.
* When the view is long clicked the dragging to dismiss interaction starts. It scales up the dragged view and presents the dismiss view in the bottom of the window.
* When the bubble or the bubble stack is dragged close to the dismiss target area, it gets pulled towards it and sticks to it. The `MagnetizedObject` and `MagneticTarget` classes are used for it.
* When the dragged view is released outside of the dismiss area, it moves back to the initial position with animation.
* When the dragged bubble is released inside of the dismiss area, it will dismiss the bubble with animation and remove it from the stack.
* When the dragged bubble bar stack is released inside the dismiss area, all the bubbles will get dismissed and the bubble bar will dissapear.
Bug: 271466616
Test: manual, TBD
Flag: WM_BUBBLE_BAR
Change-Id: I83393898be61ec522db92688ac2e111ef7d72fe6
* Added WMShell related proxy methods.
* Added DismissView dimensions and drawable resources.
* Added DismissView extension file to set it up with dimen and drawable resource ids.
Bug: 271466616
Test: manual, TBD
Flag: WM_BUBBLE_BAR
Change-Id: Iddac977a9c8a63facee45e9dd2eb234bb18d030b
* We weren't removing the instance of the view
that is created when split initiated from workspace
* Fewer bugs like this once RecentsView + workspace
instructions view are consolidated
Bug: 292590703
Flag: ENABLE_SPLIT_FROM_WORKSPACE_TO_WORKSPACE
Test: Swiping to home after split apps launch
hides the view
Change-Id: I6b5037c024e6e0c456b687bc802076f691a955b2
The bounds of the bubble stash handle is calculated based on the bounds of
the bubble bar. The problem is that the bubble bar could be invisible, which
results in incorrect bounds set for the handle.
This change sets the bounds for the handle based on the width of the screen.
Fixes: 290992144
Test: Manual
- Remove bubbles
- Restart Launcher
- Open the bubble test app and double tap on a chat
- Observe that the handle animates in
Change-Id: Ida260014d59b88387de010891c18057f3b091e93
Fixes: 290608658
Test: Manual:
- Remove all bubbles
- Lock and unlock device
- Observe that bubble bar is not displayed
- Remove all bubbles
- Restart launcher process
- Observe that bubble bar is not displayed
Change-Id: I850d307394230968f86abc23ba0b4e94f55e10f0
`MyDepthController` in `QuickstepTransitionLauncher` assumes that we
want the background to always animate the same way, matching the rest
state of the workspace (depth == 0). However, in Taskbar All Apps the
background is visible, and depth != 0. We now initialize the one-off
`DepthController` for launches to take into account the latest depth set
by the top level `DepthController`, so there is no jumpcut at the
beginning of the animation.
Note that in my opinion we should use the same `DepthController` for all
cases, rather than having this one-off. I'm looking into the feasibility
of that change, but for now this fixes the issue at hand.
Fix: 292959100
Flag: N/A
Test: manual, see videos in the bug
Change-Id: Id90e8e728cc3e2ccf7d92148fbb0d6ff3e6fd6ca
Put logic to stash desktop apps behind a flag. Turn it off by default.
Bug: 292109910
Flag: persist.wm.debug.desktop_stashing
Test: turn off the flag, open an app on the desktop and go home
observe that user is taken to home screen and subsequent launches
are in full screen
turn on the flag, open app on the desktop and go home
observe that there is a toast shown for desktop and next app is
launched to desktop
Change-Id: Ic6f9a3644bb09d4fb877f4694843a7c20969f925