To make it have the same behavior as legacy transition:
The bars are faded out when starting fixed rotation, and faded in
after display rotation change is completed. And the independent
seamless window such as round corner can keep showing on screen
seamlessly.
Also skip animation for seamless display change. Otherwise there will
be a no-op alpha animation with DEFAULT_APP_TRANSITION_DURATION=336ms
that adds unnecessary delay to finish the transition.
Bug: 221223435
Test: atest TransitionTests#testAppTransitionWithRotationChange
Change-Id: I3b1db4956b642fabb6061c7dbf0f7b2b8e1e300f
When Launcher is resume, it can call PipController#setShelfHeight during
the entering PIP animation. The animator will update end value to avoid
flicker. When that happens, we also need to update the finishTransaction
to use the updated destination bounds in current rotation when the
transition is finished.
Bug: 219411429
Test: manual enter PIP from landscape
Change-Id: Ic48ece83134a23438cfffacc0637cbd0f721f9f7
For Android S, we use the API windowSplashScreenAnimationDuration to
know the duration of the animatable icon would be, however, developers
can be confused to thought that this API is used to declare the
duration of splash screen.
To get the real duration of the animatable icon, if it is an AVD or
AnimationDrawable, try to get the animation duration from it.
Test: atest StartingSurfaceDrawerTests SplashscreenTests
Bug: 211707095
Change-Id: Ia3f8c5cd50bab164360e07d9ced87ff7f4321e96
The setup waited for a ROTATION_0, but this test starts at ROTATION_90
Bug: 219773854
Bug: 220977327
Test: atest WMShellFlickerTests:SetRequestedOrientationWhilePinnedTest
Change-Id: Ib2bde1f66f248adbe69acf5c344322e32b364eb2
The graphic memory which allocate for animatable icon cannot be
released from #onDetachedFromWindow if that SurfaceView never been
added to a window, release the host if addWindow failed.
Test: manual test, force #addWindow always fail and cold start an app
with animatable icon, verify no SurfaceView object left in surface.
Bug: 218264452
Change-Id: I024c64ce134235e487b6ab7cf33ba9fdf4079046
Merged-In: I024c64ce134235e487b6ab7cf33ba9fdf4079046
Changed the resource type extra to be an int value to indicate the
resource type instead of having individual boolean extras for each
resource type.
Bug: 218875965
Test: N/A
Change-Id: Ic734c4d0e0a769dd981ef214e1be41f62d74705c
When the windowing mode is changed during fixed rotation, we don't want
to animate to the fixed rotation anymore, because the fixed rotation
will be cancelled later.
Bug: 214324061
Test: atest WMShellFlickerTests:SetRequestedOrientationWhilePinnedTest
Change-Id: I24b5389ec2b6ea28ce3ba7abf38fbd269566edf3
All the values / things being done in PIP are exactly the same as what
DismissView does. This change updates PIP to use DismissView directly
so PIP will always pick up visual changes to dismiss without having
to copy them over manually.
Test: manual - have a PIP, drag it around and observe dismiss, drag
PIP to dismiss, observe
Bug: 217211205
Change-Id: I430df28bdb7980ff5a0316c4aab728fe54e95e6b
1 - larger gradient (same for both phone & tablet)
2 - gradient is now based on theme color
Test: manual - have a bubble, drag to dismiss it, observe the gradient
Bug: 217211205
Change-Id: Ibef23992089f0ae33dd93f9528a3ea2887aae465
* Previously on large screens the expanded view was centered on the
screen now it will be anchored to whichever edge it was expanded on
ONLY when in landscape on a large large screen. In portrait, and on
"small tablets" it will continue to be centered.
* Updates the width of the expanded view on portrait and on landscape
for large screens.
* Adds the notion of small tablet
Test: manual - Open a bubble in various configurations:
1) on phone:
* landscape => bubbles show vertically on the side they were
expanded on and expanded view is centered horizontally
* portrait => bubbles show on top, expanded view centered
horizontally
2) on tablet that isn't small:
* landscape => bubbles show vertically on the side they were
expanded on and the expanded view is anchored to that edge
with some padding
* portrait => bubbles show vertically on the side they were
expanded on and expanded view is centered horizontally
3) on small tablet:
* portrait & landscape => bubbles show vertically on the side
they were expanded on and the expanded view is centered
horizontally and takes up more space %-wise compared to a
large tablet
Bug: 217211205
Change-Id: I7259e03aab35e0039c9b7bd855c12afe38373ace
This makes triaging issues unrelated to the test (e.g., transition crash) easier since all failing assertions are clustered with the same stack trace
Bug: 219773854
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I65bb1b5e87997c856ce080b24d549ba1c978955a
Merged-In: I65bb1b5e87997c856ce080b24d549ba1c978955a
Use parent based coordinate instead of screen based coordinate when
indicating split surfaces' position so they won't be offset unexpectedly
when its parent is not at (0, 0).
Fix: 210696145
Test: check split UI when enabled "render apps below cutout area"
Change-Id: I65399f5ef2975e7ef376d161c41de2cfb7ed29dc
Update smallestScreenWidthDp of the splitting tasks, so client apps can
determine which resources they should apply.
Fix: 217600744
Fix: 220069817
Test: atest WMShellUnitTests
Test: manual check smallestScreenWidthDp of splitting apps in winscope
Change-Id: Ie36065a951dfab2d4bb8d7a56dbc12ae03ff4033
The transition is to click on the pip menu, then click on the dismiss
button. This will cause the focus change.
Fix: 215869110
Fix: 216306753
Test: atest WMShellFlickerTests:ExitPipWithDismissButtonTest
Change-Id: I50dab84f588c3bedaa7d65c02144054d4eefdcd5
- Add simple fade of the drag surface when dropping and when canceling a
drag from the shade (since the shade has closed, the default animation
of animating to the start position is wrong)
- Add case for dragging over home/recents, show the highlighted drop zone
as fullscreen since there is nothing to split with
- Fix issue with drag listener not being removed after a notification
drag
- For now, add a toast when attempting to drag a notification that does
not have a valid intent
- Also don't wait for DRAG_START to start collapsing the shade if the
call to startDrag() returns true
Bug: 217972792
Bug: 218791595
Bug: 219757067
Test: atest WMShellUnitTests
Test: atest SystemUITests
Change-Id: Ic53de0d8a999d4ae39dc207bfc2927466ad2ba7c
Test: atest BubblesTest NewNotifPipelineBubblesTest
Test: manual - force notification permission dialog to always show
- open a bubble
=> it doesn't immediately collapse
- swipe up on gesture nav
=> the bubble collapses
Bug: 218517365
Change-Id: I4271b955cac51b85e0d92e738fa2d0e38afeb154
When asking PipTaskOrganizer to animate the PiP to a different position
while it's still in the appearing transition, the PiP could get stuck in
a bad state where the PiP contents and menu items weren't drawn.
This change avoids this by only calling #scheduleAnimateResizePip once
the PiP has finished appearing.
Test: manual
Bug: 220110011
Change-Id: Ie62adea6f2cb5a4abdd6c4b8f9ff23c040077046
In addition, this CL does additional polishing to the code itself.
Bug: 215316431
Test: atest WMShellUnitTests:LetterboxEduDialogLayoutTest
Test: atest WMShellUnitTests:LetterboxEduWindowManagerTest
Test: atest WMShellUnitTests:CompatUIControllerTest
Change-Id: I3cb58f89a52f0d427545e3959dd9082e8b8b5cc7