Loading services/core/java/com/android/server/wm/DisplayContent.java +0 −3 Original line number Diff line number Diff line Loading @@ -3300,7 +3300,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp // Unlink death from remote to clear the reference from binder -> mRemoteInsetsDeath // -> this DisplayContent. setRemoteInsetsController(null); mWmService.mAnimator.removeDisplayLocked(mDisplayId); mOverlayLayer.release(); mA11yOverlayLayer.release(); mWindowingLayer.release(); Loading Loading @@ -5312,8 +5311,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp // {@link DisplayContent} ready for use. mDisplayReady = true; mWmService.mAnimator.addDisplayLocked(mDisplayId); if (mWmService.mDisplayManagerInternal != null) { mWmService.mDisplayManagerInternal .setDisplayInfoOverrideFromWindowManager(mDisplayId, getDisplayInfo()); Loading services/core/java/com/android/server/wm/WindowAnimator.java +9 −47 Original line number Diff line number Diff line Loading @@ -30,7 +30,6 @@ import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM; import android.content.Context; import android.os.Trace; import android.util.Slog; import android.util.SparseArray; import android.util.TimeUtils; import android.view.Choreographer; import android.view.SurfaceControl; Loading Loading @@ -66,7 +65,6 @@ public class WindowAnimator { int mBulkUpdateParams = 0; Object mLastWindowFreezeSource; SparseArray<DisplayContentsAnimator> mDisplayContentsAnimators = new SparseArray<>(2); private boolean mInitialized = false; private Choreographer mChoreographer; Loading Loading @@ -98,8 +96,7 @@ public class WindowAnimator { mAnimationFrameCallback = frameTimeNs -> { synchronized (mService.mGlobalLock) { mAnimationFrameCallbackScheduled = false; final long vsyncId = mChoreographer.getVsyncId(); animate(frameTimeNs, vsyncId); animate(frameTimeNs); if (mNotifyWhenNoAnimation && !mLastRootAnimating) { mService.mGlobalLock.notifyAll(); } Loading @@ -107,21 +104,11 @@ public class WindowAnimator { }; } void addDisplayLocked(final int displayId) { // Create the DisplayContentsAnimator object by retrieving it if the associated // {@link DisplayContent} exists. getDisplayContentsAnimatorLocked(displayId); } void removeDisplayLocked(final int displayId) { mDisplayContentsAnimators.delete(displayId); } void ready() { mInitialized = true; } private void animate(long frameTimeNs, long vsyncId) { private void animate(long frameTimeNs) { if (!mInitialized) { return; } Loading @@ -145,10 +132,9 @@ public class WindowAnimator { final AccessibilityController accessibilityController = mService.mAccessibilityController; final int numDisplays = mDisplayContentsAnimators.size(); final int numDisplays = root.getChildCount(); for (int i = 0; i < numDisplays; i++) { final int displayId = mDisplayContentsAnimators.keyAt(i); final DisplayContent dc = root.getDisplayContent(displayId); final DisplayContent dc = root.getChildAt(i); // Update animations of all applications, including those associated with // exiting/removed apps. dc.updateWindowsForAnimator(); Loading @@ -156,12 +142,11 @@ public class WindowAnimator { } for (int i = 0; i < numDisplays; i++) { final int displayId = mDisplayContentsAnimators.keyAt(i); final DisplayContent dc = root.getDisplayContent(displayId); final DisplayContent dc = root.getChildAt(i); dc.checkAppWindowsReadyToShow(); if (accessibilityController.hasCallbacks()) { accessibilityController.drawMagnifiedRegionBorderIfNeeded(displayId, accessibilityController.drawMagnifiedRegionBorderIfNeeded(dc.mDisplayId, mTransaction); } } Loading Loading @@ -237,12 +222,9 @@ public class WindowAnimator { public void dumpLocked(PrintWriter pw, String prefix, boolean dumpAll) { final String subPrefix = " " + prefix; for (int i = 0; i < mDisplayContentsAnimators.size(); i++) { pw.print(prefix); pw.print("DisplayContentsAnimator #"); pw.print(mDisplayContentsAnimators.keyAt(i)); pw.println(":"); final DisplayContent dc = mService.mRoot.getDisplayContent(mDisplayContentsAnimators.keyAt(i)); for (int i = 0; i < mService.mRoot.getChildCount(); i++) { final DisplayContent dc = mService.mRoot.getChildAt(i); pw.print(prefix); pw.print(dc); pw.println(":"); dc.dumpWindowAnimators(pw, subPrefix); pw.println(); } Loading @@ -260,23 +242,6 @@ public class WindowAnimator { } } private DisplayContentsAnimator getDisplayContentsAnimatorLocked(int displayId) { if (displayId < 0) { return null; } DisplayContentsAnimator displayAnimator = mDisplayContentsAnimators.get(displayId); // It is possible that this underlying {@link DisplayContent} has been removed. In this // case, we do not want to create an animator associated with it as {link #animate} will // fail. if (displayAnimator == null && mService.mRoot.getDisplayContent(displayId) != null) { displayAnimator = new DisplayContentsAnimator(); mDisplayContentsAnimators.put(displayId, displayAnimator); } return displayAnimator; } void scheduleAnimation() { if (!mAnimationFrameCallbackScheduled) { mAnimationFrameCallbackScheduled = true; Loading @@ -291,9 +256,6 @@ public class WindowAnimator { } } private class DisplayContentsAnimator { } boolean isAnimationScheduled() { return mAnimationFrameCallbackScheduled; } Loading Loading
services/core/java/com/android/server/wm/DisplayContent.java +0 −3 Original line number Diff line number Diff line Loading @@ -3300,7 +3300,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp // Unlink death from remote to clear the reference from binder -> mRemoteInsetsDeath // -> this DisplayContent. setRemoteInsetsController(null); mWmService.mAnimator.removeDisplayLocked(mDisplayId); mOverlayLayer.release(); mA11yOverlayLayer.release(); mWindowingLayer.release(); Loading Loading @@ -5312,8 +5311,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp // {@link DisplayContent} ready for use. mDisplayReady = true; mWmService.mAnimator.addDisplayLocked(mDisplayId); if (mWmService.mDisplayManagerInternal != null) { mWmService.mDisplayManagerInternal .setDisplayInfoOverrideFromWindowManager(mDisplayId, getDisplayInfo()); Loading
services/core/java/com/android/server/wm/WindowAnimator.java +9 −47 Original line number Diff line number Diff line Loading @@ -30,7 +30,6 @@ import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM; import android.content.Context; import android.os.Trace; import android.util.Slog; import android.util.SparseArray; import android.util.TimeUtils; import android.view.Choreographer; import android.view.SurfaceControl; Loading Loading @@ -66,7 +65,6 @@ public class WindowAnimator { int mBulkUpdateParams = 0; Object mLastWindowFreezeSource; SparseArray<DisplayContentsAnimator> mDisplayContentsAnimators = new SparseArray<>(2); private boolean mInitialized = false; private Choreographer mChoreographer; Loading Loading @@ -98,8 +96,7 @@ public class WindowAnimator { mAnimationFrameCallback = frameTimeNs -> { synchronized (mService.mGlobalLock) { mAnimationFrameCallbackScheduled = false; final long vsyncId = mChoreographer.getVsyncId(); animate(frameTimeNs, vsyncId); animate(frameTimeNs); if (mNotifyWhenNoAnimation && !mLastRootAnimating) { mService.mGlobalLock.notifyAll(); } Loading @@ -107,21 +104,11 @@ public class WindowAnimator { }; } void addDisplayLocked(final int displayId) { // Create the DisplayContentsAnimator object by retrieving it if the associated // {@link DisplayContent} exists. getDisplayContentsAnimatorLocked(displayId); } void removeDisplayLocked(final int displayId) { mDisplayContentsAnimators.delete(displayId); } void ready() { mInitialized = true; } private void animate(long frameTimeNs, long vsyncId) { private void animate(long frameTimeNs) { if (!mInitialized) { return; } Loading @@ -145,10 +132,9 @@ public class WindowAnimator { final AccessibilityController accessibilityController = mService.mAccessibilityController; final int numDisplays = mDisplayContentsAnimators.size(); final int numDisplays = root.getChildCount(); for (int i = 0; i < numDisplays; i++) { final int displayId = mDisplayContentsAnimators.keyAt(i); final DisplayContent dc = root.getDisplayContent(displayId); final DisplayContent dc = root.getChildAt(i); // Update animations of all applications, including those associated with // exiting/removed apps. dc.updateWindowsForAnimator(); Loading @@ -156,12 +142,11 @@ public class WindowAnimator { } for (int i = 0; i < numDisplays; i++) { final int displayId = mDisplayContentsAnimators.keyAt(i); final DisplayContent dc = root.getDisplayContent(displayId); final DisplayContent dc = root.getChildAt(i); dc.checkAppWindowsReadyToShow(); if (accessibilityController.hasCallbacks()) { accessibilityController.drawMagnifiedRegionBorderIfNeeded(displayId, accessibilityController.drawMagnifiedRegionBorderIfNeeded(dc.mDisplayId, mTransaction); } } Loading Loading @@ -237,12 +222,9 @@ public class WindowAnimator { public void dumpLocked(PrintWriter pw, String prefix, boolean dumpAll) { final String subPrefix = " " + prefix; for (int i = 0; i < mDisplayContentsAnimators.size(); i++) { pw.print(prefix); pw.print("DisplayContentsAnimator #"); pw.print(mDisplayContentsAnimators.keyAt(i)); pw.println(":"); final DisplayContent dc = mService.mRoot.getDisplayContent(mDisplayContentsAnimators.keyAt(i)); for (int i = 0; i < mService.mRoot.getChildCount(); i++) { final DisplayContent dc = mService.mRoot.getChildAt(i); pw.print(prefix); pw.print(dc); pw.println(":"); dc.dumpWindowAnimators(pw, subPrefix); pw.println(); } Loading @@ -260,23 +242,6 @@ public class WindowAnimator { } } private DisplayContentsAnimator getDisplayContentsAnimatorLocked(int displayId) { if (displayId < 0) { return null; } DisplayContentsAnimator displayAnimator = mDisplayContentsAnimators.get(displayId); // It is possible that this underlying {@link DisplayContent} has been removed. In this // case, we do not want to create an animator associated with it as {link #animate} will // fail. if (displayAnimator == null && mService.mRoot.getDisplayContent(displayId) != null) { displayAnimator = new DisplayContentsAnimator(); mDisplayContentsAnimators.put(displayId, displayAnimator); } return displayAnimator; } void scheduleAnimation() { if (!mAnimationFrameCallbackScheduled) { mAnimationFrameCallbackScheduled = true; Loading @@ -291,9 +256,6 @@ public class WindowAnimator { } } private class DisplayContentsAnimator { } boolean isAnimationScheduled() { return mAnimationFrameCallbackScheduled; } Loading