This is done by disabling all the trigger points (the 4 corners). Will
hold off on removing the entire code until later in case needed.
Bug: 179299163
Test: Manual. Dragging from the corner no longer works
Change-Id: I4ed931245cbb49647feeff8b37174f6502fe9c5e
- Add permission when register broadcast receiver
- Set receiver package explicitly when constructing PendingIntent
- Do not crash if there is no active media session when receive broadcast
Bug: 171967947
Test: adb unroot; adb shell am broadcast -a \
com.android.wm.shell.pip.PLAY
Change-Id: If9c46aab9d91de633a2628513430a59a6692e59a
Now that the SyncTransactionQueue calls back on the main thread,
it is not necessary to move the crossfade animation to the main
thread again.
Bug: 171393374
Test: Enter PIP, resize, crossfade works
Change-Id: I4022733921f4655220a5c9ae186bf10a1838f59a
While transitioning from PIP->Fullscreen the surface is uncroped
and scaled using the source rect hint from the PIP position to
the destination bounds (fullscreen). The animation controller
creates its own SurfaceControl.Transaction to apply the scale
and crop to the surface, which means that the transform is not
applied until the next frame.
To avoid this bad frame, apply the initial surface control
transaction again after starting the animation using the
SurfaceControl.Transaction supplied by the SyncTransactionQueue
callback.
Bug: 184166183
Test: Enter PIP with YT, exit to fullscreen and verify there's no
jank/flash
Change-Id: I4e4ba51be03aa86e0629e8d6532c0c4098c21aed
This resulted in a full opacity SurfaceView hanging out behind the bubble scrim. This was not visible when we had an opaque scrim but now that it's transparent again we can see it.
Bug: 184198137
Test: manual
Change-Id: If768ccc9f6dab56764227cffdbbda4f8738d56cc
Bug: 184196634
Test: Enable cutout, move pip and ensure the dismiss scrim ends under
the cutout in landscape
Change-Id: I43003e6acf6b100597080898b162018823b203c5
PipMovesInAllApps was intended to test the PiP window movement when the
shelf height of Launcher changes and breaks with the recent `Device
search` feature that opening all-apps in Launcher triggers both IME and
shelf height change.
Since PipKeyboardTest has covered PiP movement with IME, reimplement
this by launching a new app instead of going to all-apps and also rename
this test for its intention.
Bug: 184050344
Test: atest WMShellFlickerTests:PipShelfHeightTest
Change-Id: I102ea95e6e91c9707b73587282702b868eb705fb
- Don't wait for double tap timeout when clicking to unstash (you can't
double tap while stashed to expand)
- Hide the menu when stashing so that it doesn't show again when
unstashed
- Only log unstash if previously stashed
Bug: 183756396
Test: Tap to show unstashed pip/stash with menu showing
Change-Id: I693b67d38f32d28636ff6b5d0aaf096af78b825b
This change allows PipMotionHelper
and PipSnapAlgorithm can be injected
for customization.
Bug: 181956433
Test: manual test - test snapping PIP windows
atest PipBoundsAlgorithmTest PipTaskOrganizerTest PipTouchHandlerTest
Change-Id: Ic6e54f178b40ae21f8e198d8953db619b3ac9ec4
Menu actions were not clickable because the drag corner resize
handler did not take into account the OHM offset when comparing
the touch location to the PIP bounds, wrongly causing the menu
to be hidden on ACTION_DOWN and thus the menu actions never got
their click listeners fired on ACTION_UP.
Bug: 172839150
Test: Enter PIP with YT, enter OHM, play/pause/expand work fine
Change-Id: I8d1539cef46a5d7c0afe88e80638175cb3994db3
Only the thread which created the menu view (shell main thread) can
update its view layout, so ensuring that it is executed in that sense.
Also moved setup work in PipController to Shell Main thread. Ideally
they should be in ShellInit, but that will need to wait until
tv.PipController can unify with PipController.
Bug: 182418859
Test: Enter PIP
Change-Id: Ib88fefb9320ab441715c6ef3d5cf4f80dc9f022f