4a526c124554e75dc4bc11a682645a73bd47d501 |
|
16-May-2017 |
Winson Chung <winsonc@google.com> |
Ensure that we use SF Vsync Choreographer for the PiP transition. - Move the bounds animation onto the animation thread - Remove existing code referencing the old sf-vsync choreographer - Add ability for ValueAnimator subclasses to reference a different AnimationHandler, which uses a different FrameCallbackProvider with the sf-vsync choreographer in the animations that require it - Ensure that PiP touch events are batched and sent aligned with the sf-vsync - Move GC onto its own thread to not block other BackgroundThread calls Bug: 36371375 Test: android.server.cts.ActivityManagerPinnedStackTests Test: bit FrameworksServicesTests:com.android.server.wm.BoundsAnimationControllerTests Test: go/wm-smoke Change-Id: I6a41b35a4e4d4d6dbea82c2673452825fe3ffa58
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
bb23376439a369d2a4f94abcda6a46dea673a74c |
|
15-May-2017 |
Winson Chung <winsonc@google.com> |
Fixing issue with double tapping PiP. - If a user taps the PiP quickly multiple times, you can hit a case where you expand the PIP, which triggers the re-registration of the InputConsumer, but doesn't disable touches until the pinned stack animation starts. If the user taps in between that time, it can trigger a resizing of the stack what aborts the expand animation - Also adding additional debugging logs Bug: 37657050 Test: Quickly tap the PiP Change-Id: Ib0088a3aa8e917aca3214c289a0787bdf7e66199
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
79f852e7a784a6c1721fcea0936d98098f9359b9 |
|
05-May-2017 |
Winson Chung <winsonc@google.com> |
Ensure that we hide the menu without resizing when expanding. - This should be done when expanding/dismissing from the menu activity, otherwise the menu state change can cause a stack-resize animation that clobbers the expand or dismiss animation. Bug: 37650245 Test: Launch Duo in PIP, end call from notification tray Change-Id: Ie880715ae7be28a4fe2dd0d294e369b62e776c35
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
e6385a23d7d7e0628544c9751c59507d1df7885c |
|
03-May-2017 |
Winson Chung <winsonc@google.com> |
Workaround launching PiP task with CLEAR_TASK & NEW_TASK flag. - When launching an activity with CLEAR_TASK and NEW_TASK, the result code of the start is START_SUCCESS, but we still need to notify SystemUI to expand the PiP. However, because the PiP transition now waits for the first draw, this can cause severe jank and delay if the original activity is a trampoline activity. As a workaround, we immediately move the task to the fullscreen stack when clearing and restarting the task to ensure that the new task shows without delay. Bug: 37501224 Test: Open YT in PIP, launch sub-shortcut from Home Change-Id: I16bebf19b082f30695e99da1d93bc4adf5e9df0c
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
47ba140cbf9faa8c391fc85f4254ade0b4d23357 |
|
05-Apr-2017 |
Mady Mellor <madym@google.com> |
Add ability to fling to dismiss PIP from anywhere This is by default turned off and is behind a tuner flag. Allows the PIP to be dismissed if it is flung towards the bottom center of the screen and the finger is released within the bottom area of the screen. Test: Manual - enable tuner setting, have a PIP, position it at top of screen, long- fling it towards bottom center of screen, it dismisses. Bug: 35358628 Change-Id: I2d3d50093f6523c7bb321e0486dab360095a398e
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
c2627353c44f00c751f77b4e45a124f4988f61d9 |
|
18-Apr-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Tightening up rotation behavior for PIP (3/3)" into oc-dev
|
ef4dc81d508a44b321581db7c2098701da53494d |
|
11-Apr-2017 |
Winson Chung <winsonc@google.com> |
Tightening up rotation behavior for PIP (3/3) - Fixing up edge case when SysUI resizing conflicts with updating the display rotation bounds. When an interaction causes both a display rotation and a resize from SystemUI, we should defer the resize animation until the rotation has been propagated to SystemUI, otherwise the bounds used will be incorrect. Bug: 36879891 Test: android.server.cts.ActivityManagerPinnedStackTests Change-Id: Ife1b7ab0c2f1f11f33cbc9614778ff49a28c79f6
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
487737b876b5a2d2ffc2f3a875243efdbe0fb48b |
|
05-Apr-2017 |
Winson Chung <winsonc@google.com> |
Use vsync choreographer when moving PIP. Bug: 36371375 Test: Enter PIP, move PIP Change-Id: I5956a3ed9e92a4cdd4bf0a55723b9f1574c1a86f
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
87e5d55e98857bd43984c2395660d88ae20efcfc |
|
05-Apr-2017 |
Winson Chung <winsonc@google.com> |
Workaround for input ANR, always finish PiP menu activity. - Always finish the PiP menu activity when the interaction is complete (either the menu is hidden after showing, or when the user stops interacting with it and it was shown for the dismiss overlay) - Fix issue with bounds animation callback not working due to the app window being removed and not updating the app transition that its animation "finished" - Add additional logging throughout to trace PiP animation Bug: 36877782 Test: Enter PIP, tap to show menu, wait for it to hide, and then use wired headset button Change-Id: Ie88ba107d7fffdd182a4063ef4f324b58669d0ad
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
60421c9d451afa85abc6621fe97828857012a054 |
|
30-Mar-2017 |
Mady Mellor <madym@google.com> |
Update PIP dismiss to show scrim + info text at the bottom of the screen - Rather than testing how far off screen the PIP is, instead tests how far past the nav bar / on screen bars the PIP is to determine if it is a dismiss - When dragging PIP around screen, display info text + scrim at bottom these are above the PIP in z-order - On lift up or when PIP is dismissed, info text + scrim also hide - Alters dismiss animation to use end point on trajectory of finger and use FlingAnimationUtils when flinging Test: Drag PIP around screen, notice dismiss scrim + text appear, dismiss PIP and scrim / text also disappear Bug: 35358628 Change-Id: Ibc0f6a884903f7d1b3ca2fd5c20647b4acf15a71
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
81d406104a1661658eba8755de59bf1df575e4c7 |
|
11-Mar-2017 |
Mady Mellor <madym@google.com> |
Enables drag to dismiss for PiP and adds a dark scrim when dismissing - Adds a scrim that fades in as the PiP is dragged past the bottom movement bounds. - Tweaks the values for minimizing the PiP and dismissing the PiP - Fixes an issue where the PiP could be minimized in the bottom corners of the screen Test: Manual - drag PiP to bottom of screen to dismiss or swipe down on PiP when it's at the bottom of the screen Bug: 35358768 Bug: 35358628 Change-Id: Ib4ad5ed7094fef76ea979b46ea7e03d746625d00
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
57d2255cc983b614be61cab86ea8d5cafc03fdec |
|
10-Mar-2017 |
Mady Mellor <madym@google.com> |
Add drag down to dismiss pip as a dismiss option If enabled via flag, when the user drags the PIP past a threshold at the bottom of the screen, the PIP will be dismissed. If the PIP is sitting near the bottom edge and the user flings downwards the PIP will be dismissed. Unifies logic to identify for “fling towards edge” for minimize and dismiss gesture — adds additional logic to check that the start of the fling gesture was near that edge. This stops you from accidentally minimizing or dismissing on a “long fling”. Test: manual - enable flag, and drag pip to bottom of screen to dismiss Bug: 35358628 Change-Id: Iddd66ed2720964d431cddea6173767eb5565b991
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
baa7b721dc8ee22f8e5f8c373fe6ab1630446f0f |
|
04-Mar-2017 |
Winson Chung <winsonc@google.com> |
Small fixes and tweaks to PiP transition. - Fixing case where default bounds did not account for ime height - Ensuring that we using the animating/target bounds when calculating the new ime-offset bounds - Tweaking transition interpolators and durations Bug: 35396882 Test: android.server.cts.ActivityManagerPinnedStackTests Change-Id: Ia22ea0008d834c47a3f26bf2e1f484c72fae8736
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
a7f69740b5b4d74cd0736b05220d2c8633b07a63 |
|
03-Feb-2017 |
Mady Mellor <madym@google.com> |
Update how PIP size is determined - minSize = 108dp - defaultSmallestEdge = max(23% of screen width, minSize) - the shortest edge of the PIP should be minSize and the rest scales according to the aspect ratio - rather than a default PIP size, use default aspect ratio - adding expand button - fitting actions to spec Fixes: 35358504 Test: manually used test app to try different aspect ratios Change-Id: Ib6890fb7824889b9edeea7efb5b9771e64fc1514 Signed-off-by: Winson Chung <winsonc@google.com>
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
d2d909778c3dd67ccbccd5134ef7624059994ca9 |
|
28-Feb-2017 |
Winson Chung <winsonc@google.com> |
Initial changes to support expanded PiP - Prior to this CL, the input consumer and size of the PiP was tightly coupled with the visibility of the menu, but with the expanded state, the PiP should still move while the menu is visible. Bug: 35358488 Test: Click on the PiP to expand it Change-Id: If52208f19af516b2455bde26855c80f44bc9021a
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
29a786590f273b123efa4bb669c4ae51dd055a00 |
|
10-Feb-2017 |
Winson Chung <winsonc@google.com> |
Adding PipManager dumps. Test: adb shell dumpsys activity service com.android.systemui Change-Id: Id647833f1b4dcb6226517c058d17d1812f022671
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
db2ad5d974f56a0e7693d7cd2059249565bb6254 |
|
08-Feb-2017 |
Winson Chung <winsonc@google.com> |
Fixing crash when fetching stack bounds. Bug: 35115909 Bug: 35112703 Test: Manual Change-Id: I708501f2d94682e5e945e2ade52c5c53c2fb8067
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|
2a82fe587b850061ace024d2025047554987c10d |
|
02-Feb-2017 |
Winson Chung <winsonc@google.com> |
Refactor PiP logic in preparation for expanded state. - #1: Move logic for handling IME size changes into SysUI, and only rely on PinnedStackController to provide bounds when first entering PiP and on rotation - #2: Doing #1 allows us to move PipMotionHelper to SysUI completely, which lets us aggregate the animation calls out of PipTouchHandler - #3: Add proper callbacks to the listeners when the movement bounds changed from config change, ime change, or aspect ratio change. This allows SysUI to calculate the associated movement bounds for the expanded state, and we can then remove the corresponding WM call. It also means that SysUI is the only thing that needs to know about the expanded state. - #4: Fix issue where TV was getting the default bounds, not taking the aspect ratio when the PiP was entered into account. Doing #3 allows us to report the right bounds. - #5: Remove dead code related to edge snapping/minimizing now that they are on by default and associated tuner setting, and controller callbacks Test: android.server.cts.ActivityManagerPinnedStackTests (all existing tests pass) Change-Id: I3ef361bdf8d44094b4c0a11c70ba4db7d697fdec Signed-off-by: Winson Chung <winsonc@google.com>
/frameworks/base/packages/SystemUI/src/com/android/systemui/pip/phone/PipMotionHelper.java
|