PIP is not automatically appareing when launching via intent after
the Bubbles tests, when launching independently it works fine.
Bug: 218604389
Test: atest WMShellFlickerTest
Change-Id: Ib5dd76476cbe5cc054e5d4964e6dd4a5cb0ae5cc
When the last bubble is removed we clean up the views associated with
the bubbles, including the overflow view.
BubbleOverflow#getExpandedView would create the view if it didn't exist
but it wouldn't be initialized which means it wouldn't have the Bubble
Positioner set on it.
When a bubble is removed some code runs that would do stuff to the
last expanded view, if it's non-null. If the overflow was the last bubble
expanded, rather than skipping that code because the expandedView is
null (because all the bubbles are gone), it was actually recreating
the overflow expandedView but it wouldn't be initialized at that time
resulting in the NPE.
This fixes the issue by modifying BubbleOverflow's getExpandedView to
only return the view, not do any view creation.
Additionally this change removes some redundant code in BubbleStackView.
Bug: 214399371
Test: atest BubbleOverflowTest
Change-Id: Ib8d94fc7ea1163e79146e1439ec3f404d3caa303
This works by separating an app launching to 2 phases
(similar to legacy fixed rotation). First it launches
the app into a different rotation. Once the animation
finishes it creates a new seamless display-rotation
transition.
Because we have displayRotation in windowconfiguration,
we can directly rotate a window's surface instead of
checking explicitly for fixedRotationState. Since the
second-phase is a transition, we don't (ab)use
seamlessRotator. Once the display lines-up, the
surfaces and configurations automatically update.
Since we still want to explore shell-transitions style
rotation (single-transition), add a system property
to turn it off and on.
Bug: 217560545
Test: existing tests and manual tests
Change-Id: I0b34b32ff5b2650a519d3c195df452de446cf515
Create specific class for shell transition when whole CUJ crashes
Bug: 209843622
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I8d3d96af7303e6bd7bc4a540aa79b0f9ea3bf4a0
We run the flicker tests multiple times to detect CLs that intoruce flakiness early. Currently we run 5 executions of each CUJ. However, due to lab capacity and impact in presubmit times, this CL reduces the repetitions to 3
Bug: 209843622
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I165937fb82953d62c028ffe96a948d0ca00dbbe2
- When dragging to launch a new app, apply MULTIPLE_TASK to the launch
intent to allow apps that support it to show side-by-side
- This requires the pending intent resolved from LauncherAppsService to
be mutable (should be ok since we only use this api from SysUI)
- Also remove some unused members and duplication of getting the running
task when dragging
Bug: 207686016
Test: atest WMShellUnitTests
Change-Id: Ib233ad754a6c6e3c4e0d0e10ed788ab8e055cccc
Assertions are very flaky, don't provide any immediately useful information in the current state and going to be replace soon anyways
Test: atest FlickerTests
Change-Id: Id8f7649b818237bc16051d808ef46ca875669faa
Otherwise its WidowManager.LayoutParams#windowAnimations is 0, then
it won't play animation (TransitionAnimation#loadAnimationAttr
returns null) so the the surface of closing app may be updated to
invisible at random timing that causes the test flaky.
Use darker gray as window background color to make it easier to
distinguish the visual result between home, starting window (gray)
and app content (orange).
Bug: 216297992
Bug: 213852103
Test: com.android.server.wm.flicker.launch.OpenAppColdTest
Change-Id: I3bb073dfa52484a63168b3aeb6e7f5f43bd02aac
This super class will hold common logic and be used for the letterbox
education window manager in a follow up cl.
Bug: 207010227
Test: atest WMShellUnitTests:CompatUILayoutTest
Test: atest WMShellUnitTests:CompatUIWindowManagerTest
Test: atest WMShellUnitTests:CompatUIControllerTest
Change-Id: If6a1a5d1325e1fd4245b138e255000fa71273472
When a bubble is suppressed it should be removed from the stack and
expanded view.
Previously we were updating the visibility of the suppressed bubble.
This kept it in the expanded view.
Updating the suppression logic to remove the suppressed bubble view
temporarily, while it is suppressed.
When it should be visible again, adding it back.
Bug: 214090876
Test: atest BubbleDataTest BubblesTest
Test: manual, created a single bubble, checked it is hidden when
associated activity is opened and shown again after activity closes
Test: manual, created multiple bubbles, checked bubble is hidden when
associated activity is opened and shown again after activity closes
Test: manual, checked that suppressed bubble is not shown in expanded
view
Change-Id: I591a4330ccbb4d9764100715140d8bd20d0351bf
The test was previously running the transition 20 times incorrectly. This frequently led to OOM errors, since the system would store 80 instances of protos + flicker objects in memory while making assertions.
Intead run the default 5x
Bug: 216303412
Test: atest ExitPipWithSwipeDownTest
Change-Id: I20fe19239a857cfbc0818910814041323735692a
This CL enable OnBackInvokedCallback to be saved in a WindowState and
queried by the BackNavigationController to be returned when
ATM.startBackNavigation() is called.
The DecorView provides a PendingOnBackInvokedDispatcher that can receive
callback registration before being added to a ViewRootImpl.
Test: atest FrameworksCoreTests:BackNavigationTest
Bug: 131727607
Change-Id: I01528a22ea4a6583a56ade4eab69136d727855d0
Due to the large amount of traces on flicker, the tests take 15min+ to copy the files from the device to the host after the test execution. Instead, start copying the files asynchronously.
It is not possible to use the async mechanism from Tradefed's FilePullerLogCollector because it either: (1) pushes the files form the directory multiple times -- once per test -- creating a lot of duplicates; or (2) cleans up the directory without checking for new files, losing some files.
This CL creates an asynchronous file upload mechanism for flicker using coroutines
Bug: 216111397
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I5bbae834cf3439950626823c6b665c733e27e517
So that we can keep track of the status, and move it back to presubmit
after it becomes stable
Bug: 214452854
Test: pass existing
Change-Id: I60453789676cda9eb0892b601806d398af7bdc82
The failure should be fixed with ag/16678935
Bug: 213866869
Bug: 205288792
Bug: 214452854
Test: pass existing with shell transition enabled
Change-Id: I2f8696a14d5f2537858e92f05edc2ef7629e4afe
For use in KotlinJS (winscope) the Region class cannot have multiple constructors. JS doesn't support method or constructor overload.
This CL make the tests compatible with the newer class version
Bug: 216111397
Test: atest WMShellFlickerTests
Change-Id: Ifa5f8c6e0063185e2986019b3a27f24c93fe05d2
Remove WINDOWING_MODE_SPLIT_SCREEN_PRIMARY and SECONDARY used on
tests and replace them by WINDOWING_MODE_MULTI_WINDOW or other
migrate way.
Bug: 199236198
Test: atest WmTests
Test: atest DragAndDropPolicyTest
Change-Id: I41b25392d710eeea42edf75b3c9bca20a7d8a887
The test flakiness is significantly slowing down presubmit
Bug: 209843622
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I096e9f69e6de8ff73d527db533e76e8da44fdcb0