This CL sets the thumbnailView ratio correctly in Alt-Tab UI. The currently supported ratios are `SNAP_TO_30_70, SNAP_TO_50_50, SNAP_TO_70_30`. This can be extended when we add more split modes later.
Bug: 328691131
Test: manual in both landscape and portrait mode.
Flag: EXEMPT bugfix
Recall: http://recall/clips/79f3b250-d691-4b03-93c3-825a80478ae0
Change-Id: Idf4f174d1b222a8f3c80e5c6ed17c5bf53d3368c
The OverviewCommandHelper conversion to kotlin introduced a bug when using 3-button-navigation to go to Overview when the animation is disabled. A NullPointerException happens in the AnimatorListenerAdapter implementation in OverviewCommandHelper when StateManager.goToState calls onAnimationEnd providing a null argument to a function that shouldn't allow a null value.
The abstract class AnimatorListenerAdapter implements AnimatorListener functions containing @NonNull Animator. However, AnimatorListenerAdapter overrides the interface functions without adding a @NonNull annotation in the arguments. In Java, this is allowed, causing only a warning. In Kotlin, due to the null safety nature, the compiler forces a null check for nullable types and doesn't allow the implementation of a @NonNull argument to become nullable.
To fix this issue we created a empty AnimatorSet to provide to onAnimationEnd instead of null.
For more context when @NonNull was added:
- The @NonNull annotation was added to fix b/206801689, however it was never updated for AnimatorListenerAdapterImproved Commit Message
Fix: 364860731
Bug: 352046797
Flag: EXEMPT bugfix
Test: Manual. Instructions in the bug.
Change-Id: I120af3d75e614581d6ac0f867a8c6f9419ee1bd3
Sepcify a positive number which must larger than task layer, to ensure
the scrim layer must occludes home task and wallpaper. Otherwise any
reparent transaction without specify layer could affect the visual
order.
Flag: EXEMPT bugfix
Bug: 363927522
Test: verify the scrim layer above home and wallpaper while playing
back-to-home animation.
Change-Id: I558e29e0ebe72b8efb42cacc9cafd7869b09a40e
The test timeout is the time the test infraestructure allows a test
to be idle for. Because of it, we don't get the event tiemout error
so reducing the timeout wait will allow us to get the event error.
Bug: 352569050
Test: IntegrationReorderWidgetsTest
Flag: TEST_ONLY
Change-Id: Ic43210a3ca5b5239b1156753bdf8253cd738bdec
- Also simplified DigitalWellBeingToast to be an actual View that is a children of TaskView
- Split out getDwbLayoutTranslations into 2 methods
- One that update layout will be called earlier during TaskView.updateTaskSize. It now takes calcualted split snaphsot size and layoutParams sizes instead of using measured sizes so it can run before onMeasure. Also make sure updateLayoutParams is called.
- One that calulate translations only can be called more frequently without causing jank during animation
- TaskView.updateTaskSize now always set the exact sizes as layoutParams instead of MATCH_PARENT, so we can use the values for updateDwbBannerLayout
- Simplified outline and splitOffsetTranslation calculations
Fix: 345789862
Fix: 362435532
Test: Presubmit and manually testing DWB banner in variaous configuration single/split real/fake portrait/landscape/fake
Flag: EXEMPT bugfix
Change-Id: Ibde877c5f983689e0ef8104ba344b5947d0e3948
1. Announce description of both snapshot in GroupedTaskView.
2. Announce them in correct order.
After setting right content description for both the apps in split mode, announcement order was reverse. Seems that order of the node tree which android sees was wrong. Also order did not change even in RTL mode.
see here https://paste.googleplex.com/6492038621298688.
The correct order is manually set using addChildrenForAccessibility in GroupedTaskView. (similarly being used in RecentsView since we use reverse order for overview). Also considered RTL.
See order after fix here
https://paste.googleplex.com/6492038621298688https://drive.google.com/file/d/1BA1YKkcNsovEu4us9cvq5xOdXviTR1OV/view?usp=drive_link
Other alternatives tried were fixing order using android:accessibilityTraversalAfter and android:accessibilityTraversalBefore, both in layout and programatically which doesn't seem to work.
Test: Manual - Using Node tree debugging of talkback developer options.(Print and filter by tag TreeDebug)
BUG: 330424779
Flag: EXEMPT bugfix
Change-Id: If3c360277bd951d2d2b223bab7844e078e9c7d27
This CL adds a fix to prevent OverviewCommandHelper adding and running a new command when a previous command is already running.
In some cases OverviewCommandHelper queue gets cleared, ignoring if a command is still running. This behavior allows a new command to be added in the queue and executed right away, even that an old command is still waiting for callback. This results in the queue to be stuck due to an invalid state.
To prevent this, we implement the following changes:
- Prevent calling onTaskLaunchedInLiveTileMode from RecentsView when recents animation controller is null.
- Fix clearPendingCommands to clear only the pending commands from the queue, and not the running command.
Fix: 352046797
Flag: EXEMPT bugfix.
Test: Manual.
Change-Id: Ia6afc86424d298353a7ad6755e9a98275330d4ce
Instead of throwing the event on the Launcher, now the test listens
to changes in the view tree and when the condition is meet it stops the
waiter.
Bug: 352569050
Bug: 324261526
Test: IntegrationReorderWidgetsTest
Flag: TEST_ONLY
Change-Id: I94596429cb79af6b298281bd5cd4558e919736e2
Taskbar and bubble bar stash handle should use a similar animation for
stash and unstash.
Remove duplicate alpha animation constants and use only the ones defined
in taskbar controller for taskbar and bubble bar.
Bug: 345680453
Flag: EXEMPT refactor
Test: m
Change-Id: I9edf847fc4148bc731051de60a883011e6bfb848
- Added a few basic tests for scenarios that should be contant across subclasses. These tests will not run on their own, they will only run when a subclass' test suite is run.
- Added test suites for LauncherSwipeHandlerV2 and FallbackSwipeHandler
Flag: EXEMPT adding tests
Bug: 353763639
Test: LauncherSwipeHandlerV2Test, FallbackSwipeHandlerTest
Change-Id: Ib44199f5d5281a544b433649d6ed49ae2a65ed70
When animating bubble bar from the stash handle, scale the width to the
handle.
Bubble bar is already almost the size of the handle, but a small scale
is still added.
Bug: 345488489
Flag: com.android.wm.shell.enable_bubble_bar
Test: atest TransientBubbleStashControllerTest
Test: slow animations down and unstash and stash bubble bar, observe
that the width of the bubble bar scales down to the handle
Change-Id: I54dc228fa41d4d494bfb15e191d2ba563c0970c7