Loading services/core/java/com/android/server/wm/ActivityRecord.java +1 −1 Original line number Diff line number Diff line Loading @@ -7173,7 +7173,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A Slog.v(TAG, "Eval win " + w + ": isDrawn=" + w.isDrawn() + ", isAnimationSet=" + isAnimationSet); if (!w.isDrawn()) { Slog.v(TAG, "Not displayed: s=" + winAnimator.mSurfaceController Slog.v(TAG, "Not displayed: s=" + winAnimator.mSurfaceControl + " pv=" + w.isVisibleByPolicy() + " mDrawState=" + winAnimator.drawStateToString() + " ph=" + w.isParentWindowHidden() + " th=" + mVisibleRequested Loading services/core/java/com/android/server/wm/DisplayContent.java +3 −3 Original line number Diff line number Diff line Loading @@ -4082,12 +4082,12 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp final Transaction t = mWmService.mTransactionFactory.get(); forAllWindows(w -> { final WindowStateAnimator wsa = w.mWinAnimator; if (wsa.mSurfaceController == null) { if (wsa.mSurfaceControl == null) { return; } if (!mWmService.mSessions.contains(wsa.mSession)) { Slog.w(TAG_WM, "LEAKED SURFACE (session doesn't exist): " + w + " surface=" + wsa.mSurfaceController + w + " surface=" + wsa.mSurfaceControl + " token=" + w.mToken + " pid=" + w.mSession.mPid + " uid=" + w.mSession.mUid); Loading @@ -4096,7 +4096,7 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp mTmpWindow = w; } else if (w.mActivityRecord != null && !w.mActivityRecord.isClientVisible()) { Slog.w(TAG_WM, "LEAKED SURFACE (app token hidden): " + w + " surface=" + wsa.mSurfaceController + w + " surface=" + wsa.mSurfaceControl + " token=" + w.mActivityRecord); ProtoLog.i(WM_SHOW_TRANSACTIONS, "SURFACE LEAK DESTROY: %s", w); wsa.destroySurface(t); Loading services/core/java/com/android/server/wm/InputMonitor.java +2 −2 Original line number Diff line number Diff line Loading @@ -623,7 +623,7 @@ final class InputMonitor { // occlusion detection depending on the type or if it's a trusted overlay. populateOverlayInputInfo(inputWindowHandle, w); setInputWindowInfoIfNeeded(mInputTransaction, w.mWinAnimator.mSurfaceController.mSurfaceControl, inputWindowHandle); w.mWinAnimator.mSurfaceControl, inputWindowHandle); return; } // Skip this window because it cannot possibly receive input. Loading Loading @@ -687,7 +687,7 @@ final class InputMonitor { if (w.mWinAnimator.hasSurface()) { populateInputWindowHandle(inputWindowHandle, w); setInputWindowInfoIfNeeded(mInputTransaction, w.mWinAnimator.mSurfaceController.mSurfaceControl, inputWindowHandle); w.mWinAnimator.mSurfaceControl, inputWindowHandle); } } } Loading services/core/java/com/android/server/wm/RootWindowContainer.java +3 −3 Original line number Diff line number Diff line Loading @@ -667,7 +667,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> boolean reclaimSomeSurfaceMemory(WindowStateAnimator winAnimator, String operation, boolean secure) { final WindowSurfaceController surfaceController = winAnimator.mSurfaceController; final SurfaceControl surfaceControl = winAnimator.mSurfaceControl; boolean leakedSurface = false; boolean killedApps = false; EventLogTags.writeWmNoSurfaceMemory(winAnimator.mWin.toString(), Loading @@ -692,7 +692,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> return; } final WindowStateAnimator wsa = w.mWinAnimator; if (wsa.mSurfaceController != null) { if (wsa.mSurfaceControl != null) { pidCandidates.append(wsa.mSession.mPid, wsa.mSession.mPid); } }, false /* traverseTopToBottom */); Loading @@ -717,7 +717,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> // app to request another one. Slog.w(TAG_WM, "Looks like we have reclaimed some memory, clearing surface for retry."); if (surfaceController != null) { if (surfaceControl != null) { ProtoLog.i(WM_SHOW_SURFACE_ALLOC, "SURFACE RECOVER DESTROY: %s", winAnimator.mWin); SurfaceControl.Transaction t = mWmService.mTransactionFactory.get(); Loading services/core/java/com/android/server/wm/ScreenRotationAnimation.java +1 −1 Original line number Diff line number Diff line Loading @@ -324,7 +324,7 @@ class ScreenRotationAnimation { if (!w.mToken.mRoundedCornerOverlay || !w.isVisible() || !w.mWinAnimator.hasSurface()) { return; } t.setSkipScreenshot(w.mWinAnimator.mSurfaceController.mSurfaceControl, skipScreenshot); t.setSkipScreenshot(w.mWinAnimator.mSurfaceControl, skipScreenshot); }, false); if (!skipScreenshot) { // Use sync apply to apply the change immediately, so that the next Loading Loading
services/core/java/com/android/server/wm/ActivityRecord.java +1 −1 Original line number Diff line number Diff line Loading @@ -7173,7 +7173,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A Slog.v(TAG, "Eval win " + w + ": isDrawn=" + w.isDrawn() + ", isAnimationSet=" + isAnimationSet); if (!w.isDrawn()) { Slog.v(TAG, "Not displayed: s=" + winAnimator.mSurfaceController Slog.v(TAG, "Not displayed: s=" + winAnimator.mSurfaceControl + " pv=" + w.isVisibleByPolicy() + " mDrawState=" + winAnimator.drawStateToString() + " ph=" + w.isParentWindowHidden() + " th=" + mVisibleRequested Loading
services/core/java/com/android/server/wm/DisplayContent.java +3 −3 Original line number Diff line number Diff line Loading @@ -4082,12 +4082,12 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp final Transaction t = mWmService.mTransactionFactory.get(); forAllWindows(w -> { final WindowStateAnimator wsa = w.mWinAnimator; if (wsa.mSurfaceController == null) { if (wsa.mSurfaceControl == null) { return; } if (!mWmService.mSessions.contains(wsa.mSession)) { Slog.w(TAG_WM, "LEAKED SURFACE (session doesn't exist): " + w + " surface=" + wsa.mSurfaceController + w + " surface=" + wsa.mSurfaceControl + " token=" + w.mToken + " pid=" + w.mSession.mPid + " uid=" + w.mSession.mUid); Loading @@ -4096,7 +4096,7 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp mTmpWindow = w; } else if (w.mActivityRecord != null && !w.mActivityRecord.isClientVisible()) { Slog.w(TAG_WM, "LEAKED SURFACE (app token hidden): " + w + " surface=" + wsa.mSurfaceController + w + " surface=" + wsa.mSurfaceControl + " token=" + w.mActivityRecord); ProtoLog.i(WM_SHOW_TRANSACTIONS, "SURFACE LEAK DESTROY: %s", w); wsa.destroySurface(t); Loading
services/core/java/com/android/server/wm/InputMonitor.java +2 −2 Original line number Diff line number Diff line Loading @@ -623,7 +623,7 @@ final class InputMonitor { // occlusion detection depending on the type or if it's a trusted overlay. populateOverlayInputInfo(inputWindowHandle, w); setInputWindowInfoIfNeeded(mInputTransaction, w.mWinAnimator.mSurfaceController.mSurfaceControl, inputWindowHandle); w.mWinAnimator.mSurfaceControl, inputWindowHandle); return; } // Skip this window because it cannot possibly receive input. Loading Loading @@ -687,7 +687,7 @@ final class InputMonitor { if (w.mWinAnimator.hasSurface()) { populateInputWindowHandle(inputWindowHandle, w); setInputWindowInfoIfNeeded(mInputTransaction, w.mWinAnimator.mSurfaceController.mSurfaceControl, inputWindowHandle); w.mWinAnimator.mSurfaceControl, inputWindowHandle); } } } Loading
services/core/java/com/android/server/wm/RootWindowContainer.java +3 −3 Original line number Diff line number Diff line Loading @@ -667,7 +667,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> boolean reclaimSomeSurfaceMemory(WindowStateAnimator winAnimator, String operation, boolean secure) { final WindowSurfaceController surfaceController = winAnimator.mSurfaceController; final SurfaceControl surfaceControl = winAnimator.mSurfaceControl; boolean leakedSurface = false; boolean killedApps = false; EventLogTags.writeWmNoSurfaceMemory(winAnimator.mWin.toString(), Loading @@ -692,7 +692,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> return; } final WindowStateAnimator wsa = w.mWinAnimator; if (wsa.mSurfaceController != null) { if (wsa.mSurfaceControl != null) { pidCandidates.append(wsa.mSession.mPid, wsa.mSession.mPid); } }, false /* traverseTopToBottom */); Loading @@ -717,7 +717,7 @@ class RootWindowContainer extends WindowContainer<DisplayContent> // app to request another one. Slog.w(TAG_WM, "Looks like we have reclaimed some memory, clearing surface for retry."); if (surfaceController != null) { if (surfaceControl != null) { ProtoLog.i(WM_SHOW_SURFACE_ALLOC, "SURFACE RECOVER DESTROY: %s", winAnimator.mWin); SurfaceControl.Transaction t = mWmService.mTransactionFactory.get(); Loading
services/core/java/com/android/server/wm/ScreenRotationAnimation.java +1 −1 Original line number Diff line number Diff line Loading @@ -324,7 +324,7 @@ class ScreenRotationAnimation { if (!w.mToken.mRoundedCornerOverlay || !w.isVisible() || !w.mWinAnimator.hasSurface()) { return; } t.setSkipScreenshot(w.mWinAnimator.mSurfaceController.mSurfaceControl, skipScreenshot); t.setSkipScreenshot(w.mWinAnimator.mSurfaceControl, skipScreenshot); }, false); if (!skipScreenshot) { // Use sync apply to apply the change immediately, so that the next Loading