PiP2's enter flow is different in that we resolve
TRANSIT_PIP's startWCT in Shell, and PipTransition
will always make sure to set the right alphas
at the start and finish.
Bug: 380030547
Flag: com.android.wm.shell.enable_pip2
Test: atest NexusLauncherOutOfProcTests:TaplTestsSplitscreen
Change-Id: I7d28ed5dcccecfab71ff324098d5c31653ce1c9f
This change addresses an issue where the background of the multi
instance menu would sometimes not render in time, leading to a visual
bug.
Fix: 380087041
Bug: 315989246
Test: Manual
Flag: com.android.launcher3.enable_multi_instance_menu_taskbar
Change-Id: I32b746a990e89e954b00a0cdcb0e1bf2fae2537f
Add a semaphore to block the test until the bubble bar is expanded.
100x run: http://ab/I94900010337166460
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 380023942
Test: ab link above
Change-Id: I473208255ef658ee532f54c2665889ee5c24e39e
Bubble bar was stashing with a delay compared to taskbar.
This is because taskbar stashing looks at isInLauncher value in addition
to launcher state.
Add this check to the bubble bar in overview condition. And only
consider bubble bar showing in overview if we isInLauncher returns true
and launcher state is overview.
Bug: 371229068
Test: manual, start from home with bubble bar shown, swipe up to
overview, tap on an app, observe that bubble bar stashes at the same
time as taskbar
Test: swipe up to home, open all apps, check that bubble bar remains
visible
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Icedfd29300f739e37d636122bad0fb6e14fa2ced
This reverts commit ec111e24e5.
Reason for revert: pip regressions — I'll do a quick revert for now
Change-Id: Ie91bae447acd9813188a5ba0caebeca30db348ea
Fixes: 379800273
Fixes: 379602904
Bug: 354627538
The first gestures fail to finish the recents animation controller when using the recents window tracker. This change fixes several test failures and makes gesture nav more stable on launcher restart.
Flag: com.android.launcher3.enable_fallback_overview_in_window
Fixes: 377679001
Test: TAPL tests
Change-Id: I617a27238a834dc734c9ae036045f159b06fd004
When the IME becomes visible, interrupt the bubble animation if it's
running. This ensures that the flyout doesn't show over the IME and
is more consistent with the behavior of bubble notification when the
IME is visible.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 378404363
Test: atest BubbleBarViewAnimatorTest
Test: manual
- launch app
- send bubble
- while bubble is animating launch IME
- observe flyout not visible over IME
Change-Id: I28390982bb41d8cc9b494395418728ff5fb373b6
Interrupt the animation when the user swipes home.
When there are no bubbles the stashed state now keeps getting
updated so that when a bubble is created we can correctly
detect stash change events.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 378967270
Test: manual
- dismiss bubble bar
- launch app
- send bubble
- swipe home during the animation
- observe the bar does not stash at the end
Change-Id: I2f054b7110af68f9637a4011a378ba35776b3771
TaskThumbnailView
- Set cornerRadius directly from TaskView instead of calulating and listening from ViewModel
- Use onSizeChagned/width/height for OutlineProvider bounds, to be consistent with DesktopTaskContentView
DesktopTaskView
- Moved backgroundView inside DesktopTaskContentView, so its outline can be determiend by OutlineProvider in DesktopTaskContentView
- Update DesktopTaskContentView's cornerRadius when it changes in TaskView
Model/Data chagnes
- Removed TaskViewModel/TaskViewData and scale from RecentsViewData
TaskView
- Add a onBind method to be called after bind, for common post bind handling (e.g. update cornerRadius)
TaskViewSimualtor
- Use DesktopFullscreenDrawParams for desktop task, and moved setIsDesktopTask to CTOR so related fields can be final
Bug: 372237039
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Flag: com.android.window.flags.enable_desktop_windowing_mode
Test: TaskThumbnailViewScreenshotTest, OverviewDesktopTaskImageTest
Test: DesktopFullscreenDrawParamsTest, FullscreenDrawParamsTest, TaskThumbnailViewModelImplTest
Change-Id: If3d195ef6596aa28fce4d4875cf45423cb71811c
This is in support of long-lived return animations in the Animation
library. Sometimes we want the home gesture to minimize the
foreground app into a custom view other than the default Launcher
behavior.
For example, ongoing call will minimize to the status bar chip, even if
the app icon is on Home. This is guaranteed to be handled is the
takeover handler is not null, and only happens in this case (which means
a custom animation has been registered and is ready to run).
Bug: 323863002
Bug: 202516970
Flag: com.android.systemui.shared.return_animation_framework_library
Flag: com.android.systemui.shared.return_animation_framework_long_lived
Test: manual and unit test included
Change-Id: Id7cd1f6e92ad3cbe3c259b3f80c753c91472b455
We can have both bg and UI threads accessing DatabaseHelper to read/write mMaxItemId, thus we should use AtomicInteger to avoid producing duplicated id, which will fail ModelWrite#checkItemInfoLocked
Fix: 379490918
Test: presubmit
Flag: NONE - crash fix
Change-Id: I6cebbb7e854a9eb48ff59b61f5ebba42ea449ec7
In certain situations, space in taskbar may be restricted so even the
overflow icon for running apps is technically overflowing available
space (i.e. not fully within intended margins). In such cases the
overflow icon was not rendered, as the size of the overflown icons was
larger than the number of running app icons, so the list of icons for
overflow icon was never fully initialized.
Handle this case by capping the number of items to add to overflow icon
to the number of available running apps.
Bug: 379774843
Test: Enable three button navigation, increase the display scaling (to
effectively reduce available space), and enter desktop session in
portrait orientation. Verify the taskbar overflow icon shows up.
Flag: com.android.launcher3.taskbar_overflow
Change-Id: I06371637d1b01e99eaf30aec98ae0920aa248652
The tests verify that number of icons in the task bar does not go beyond
the intended max number, that the taskbar remains centered as it hits
max number of icons, and maintains a minimal margin to the display
edges.
Also, has a test that the max naumber of icons and the taskbar margins
adapt as bubble bar visibility chages.
Adds a TestRule to mock the recents model in the taskbar window sandbox.
The mocked recents model is used to add fake running app icons to the
taskbar.
Bug: 368119679
Test: atest TaskbarOverflowTest
Flag: EXEMPT test only
Change-Id: I8d033c3e95d7c0a4b139502cd7d70882482117c0
While dragged, bubble bar needs elevation to show up above dismiss view
and dismiss view scrim.
Previously, bubble bar and dismiss view were under the same parent, drag
layer. This allowed us to position bubble bar above dismiss view by
adding elevation to it.
After introducing the bubble bar container, bubble bar is not shown on
top of dismiss view when its elevation changes. Because they are no
longer under the same parent.
Move drag elevation from bubble bar to bubble bar container. The
container and dismiss view are under the same parent.
Bug: 376140375
Test: manual, drag bubble bar or bubble, check they are above dismiss
view and the scrim
Test: receive a new message, check that flyout is shown
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ie0fb677929bb2413c10b934fc8b362cde7b8cecd
The history displays the latest tokens played. Useful for testing and
debugging.
Test: presubmit
Flag: NONE MSDL playback is flagged case by case.
Bug: 377496684
Change-Id: I163889ade9fe4dee7f02459d2d9d81b94197bea1
The root cause was that there were other unaccounted code paths inside
`KeyboardQuickSwitchViewController` that were causing the KQS view
to be closed.
The fix introduces a new `onCloseStarted` callback that is called before
closing the KQS view. This allows to toggle the overflow button together
with the KQS closing animation (in case it closes with animation).
Bug: 379614917
Flag: com.android.launcher3.taskbar_overflow
Test: manual, following steps in the bug
Change-Id: I1868142c1cdba8111cb86c4c54e5b12b643732c5
Bug: 373544911
Test: TaskbarNavButtonControllerTest
Test: Manual, i.e. verify that pressing buttons in 3-button-nav while the back button is pressed does not have any effect
Flag: com.android.window.flags.predictive_back_three_button_nav
Change-Id: I5abad5f2f74d09c790380a2eeb27aff3b780b925
When the bubble notification animation is interrupted, we now
animate the dot back in so that it is visible.
Before this change we unsuppressed the dot which should normally
make the dot visible. The problem was that when the animation is
interrupted we immediately clear the animating bubble field but
showing the dot happens at the end of the flyout fade animation.
This change also animates the dot back in instead of setting the
scale immediately to 1.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 379733568
Test: manual
- launch app
- send a bubble
- when the flyout shows, swipe to go home
- observe animation is cleared and dot is visible
Change-Id: Ie7a10ddf237480ac6555d5f2b40da343394ce77f