OSDN Git Service

Reduce jank during pinned stack animation
authorWale Ogunwale <ogunwale@google.com>
Sat, 6 Feb 2016 21:58:29 +0000 (13:58 -0800)
committerWale Ogunwale <ogunwale@google.com>
Tue, 9 Feb 2016 20:48:11 +0000 (12:48 -0800)
commit480dca0d1b08f8895f66f857e9bd341033fab2d9
tree669bfc8f223892cf0e4c63ab5e34b8a99ecf9144
parentc61e102474c1fe0e16503856531106f8bff9e36b
Reduce jank during pinned stack animation

- Don’t launch Pip overlay activities during pinned stack animation.
This causes extra CPU load and takes a way resources from the running
animation.
- Finish Pip overlay activities before starting pinned stack resize
animation. Reduces the amount of work the system needs to do to keep
the overlays in-sync with the other activities in the pinned stack.
- Use AM.resizeStack with null bounds to take Pip to fullscreen so that
we can animate the bounds changed.
- Also, fixed Activity.enterPictureInPicture API to animate the transition
if Pip is entered from the app instead of Pip manager.

Bug: 25672053
Change-Id: I82399c10f1b8c675ea3861ba973dc8ecfbfbe50f
14 files changed:
core/java/android/app/ActivityManagerNative.java
core/java/android/app/IActivityManager.java
core/java/android/app/ITaskStackListener.aidl
packages/SystemUI/src/com/android/systemui/recents/RecentsImpl.java
packages/SystemUI/src/com/android/systemui/recents/tv/RecentsTvActivity.java
packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
packages/SystemUI/src/com/android/systemui/tv/pip/PipManager.java
packages/SystemUI/src/com/android/systemui/tv/pip/PipMenuActivity.java
packages/SystemUI/src/com/android/systemui/tv/pip/PipOnboardingActivity.java
packages/SystemUI/src/com/android/systemui/tv/pip/PipOverlayActivity.java
services/core/java/com/android/server/am/ActivityManagerService.java
services/core/java/com/android/server/am/ActivityStackSupervisor.java
services/core/java/com/android/server/am/ActivityStarter.java
services/core/java/com/android/server/wm/TaskStack.java