diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2021-10-26 04:08:55 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2021-10-26 04:08:55 +0000 |
| commit | 141bdcf58b28d22b4b537d97ffdbc3a671557c95 (patch) | |
| tree | 1919134b0c623326a179e3fed7db7fb329a88530 | |
| parent | 7d478995e532e309381dc4af8048a42c2aad440a (diff) | |
| parent | fe493243d3d1e7226decd22077b7a665d741de31 (diff) | |
Merge "Remove DisplayContent#mExitingTokens and WindowToken#hasVisible"
4 files changed, 1 insertions, 70 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 552de6ff0a08..9e12f28090b4 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -467,9 +467,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp @VisibleForTesting boolean isDefaultDisplay; - /** Window tokens that are in the process of exiting, but still on screen for animations. */ - final ArrayList<WindowToken> mExitingTokens = new ArrayList<>(); - /** Detect user tapping outside of current focused task bounds .*/ @VisibleForTesting final TaskTapPointerEventListener mTapDetector; @@ -3359,17 +3356,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp }); pw.println(); - if (!mExitingTokens.isEmpty()) { - pw.println(); - pw.println(" Exiting tokens:"); - for (int i = mExitingTokens.size() - 1; i >= 0; i--) { - final WindowToken token = mExitingTokens.get(i); - pw.print(" Exiting #"); pw.print(i); - pw.print(' '); pw.print(token); - pw.println(':'); - token.dump(pw, " ", dumpAll); - } - } final ScreenRotationAnimation rotationAnimation = getRotationAnimation(); if (rotationAnimation != null) { @@ -4623,21 +4609,6 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp return ret; } - void setExitingTokensHasVisible(boolean hasVisible) { - for (int i = mExitingTokens.size() - 1; i >= 0; i--) { - mExitingTokens.get(i).hasVisible = hasVisible; - } - } - - void removeExistingTokensIfPossible() { - for (int i = mExitingTokens.size() - 1; i >= 0; i--) { - final WindowToken token = mExitingTokens.get(i); - if (!token.hasVisible) { - mExitingTokens.remove(i); - } - } - } - @Override void onDescendantOverrideConfigurationChanged() { setLayoutNeeded(); diff --git a/services/core/java/com/android/server/wm/RootWindowContainer.java b/services/core/java/com/android/server/wm/RootWindowContainer.java index 1277e35fedc3..761416560826 100644 --- a/services/core/java/com/android/server/wm/RootWindowContainer.java +++ b/services/core/java/com/android/server/wm/RootWindowContainer.java @@ -839,12 +839,6 @@ class RootWindowContainer extends WindowContainer<DisplayContent> UPDATE_FOCUS_WILL_PLACE_SURFACES, false /*updateInputWindows*/); } - // Initialize state of exiting tokens. - for (int displayNdx = 0; displayNdx < mChildren.size(); ++displayNdx) { - final DisplayContent displayContent = mChildren.get(displayNdx); - displayContent.setExitingTokensHasVisible(false); - } - mHoldScreen = null; mScreenBrightnessOverride = PowerManager.BRIGHTNESS_INVALID_FLOAT; mUserActivityTimeout = -1; @@ -951,12 +945,6 @@ class RootWindowContainer extends WindowContainer<DisplayContent> mWmService.mDestroySurface.clear(); } - // Time to remove any exiting tokens? - for (int displayNdx = mChildren.size() - 1; displayNdx >= 0; --displayNdx) { - final DisplayContent displayContent = mChildren.get(displayNdx); - displayContent.removeExistingTokensIfPossible(); - } - for (int displayNdx = 0; displayNdx < mChildren.size(); ++displayNdx) { final DisplayContent displayContent = mChildren.get(displayNdx); if (displayContent.pendingLayoutChanges != 0) { diff --git a/services/core/java/com/android/server/wm/WindowStateAnimator.java b/services/core/java/com/android/server/wm/WindowStateAnimator.java index 423b3a05565e..4db853ecf50b 100644 --- a/services/core/java/com/android/server/wm/WindowStateAnimator.java +++ b/services/core/java/com/android/server/wm/WindowStateAnimator.java @@ -514,8 +514,6 @@ class WindowStateAnimator { return; } - boolean displayed = false; - computeShownFrameLocked(); setSurfaceBoundariesLocked(t); @@ -535,7 +533,6 @@ class WindowStateAnimator { } } else if (mLastAlpha != mShownAlpha || mLastHidden) { - displayed = true; mLastAlpha = mShownAlpha; ProtoLog.i(WM_SHOW_TRANSACTIONS, "SURFACE controller=%s alpha=%f HScale=%f, VScale=%f: %s", @@ -566,14 +563,10 @@ class WindowStateAnimator { } } } - if (hasSurface()) { - w.mToken.hasVisible = true; - } } else { if (DEBUG_ANIM && mWin.isAnimating(TRANSITION | PARENTS)) { Slog.v(TAG, "prepareSurface: No changes in animation for " + this); } - displayed = true; } if (w.getOrientationChanging()) { @@ -589,10 +582,6 @@ class WindowStateAnimator { ProtoLog.v(WM_DEBUG_ORIENTATION, "Orientation change complete in %s", w); } } - - if (displayed) { - w.mToken.hasVisible = true; - } } /** diff --git a/services/core/java/com/android/server/wm/WindowToken.java b/services/core/java/com/android/server/wm/WindowToken.java index ad351f099e1f..123141711aa2 100644 --- a/services/core/java/com/android/server/wm/WindowToken.java +++ b/services/core/java/com/android/server/wm/WindowToken.java @@ -26,8 +26,6 @@ import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_ADD_REMOVE; import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_APP_TRANSITIONS; import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_FOCUS; import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_WINDOW_MOVEMENT; -import static com.android.server.wm.SurfaceAnimator.ANIMATION_TYPE_WINDOW_ANIMATION; -import static com.android.server.wm.WindowContainer.AnimationFlags.CHILDREN; import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; import static com.android.server.wm.WindowContainerChildProto.WINDOW_TOKEN; @@ -102,9 +100,6 @@ class WindowToken extends WindowContainer<WindowState> { // Is key dispatching paused for this token? boolean paused = false; - // Temporary for finding which tokens no longer have visible windows. - boolean hasVisible; - // Set to true when this token is in a pending transaction where it // will be shown. boolean waitingToShow; @@ -240,6 +235,7 @@ class WindowToken extends WindowContainer<WindowState> { } } + /** Starts exit animation or hides windows if needed. It is only used for non-activity token. */ void setExiting(boolean animateExit) { if (isEmpty()) { super.removeImmediately(); @@ -255,27 +251,15 @@ class WindowToken extends WindowContainer<WindowState> { final int count = mChildren.size(); boolean changed = false; - final boolean delayed = isAnimating(TRANSITION | PARENTS) - || (isAnimating(CHILDREN, ANIMATION_TYPE_WINDOW_ANIMATION) && animateExit); - for (int i = 0; i < count; i++) { final WindowState win = mChildren.get(i); changed |= win.onSetAppExiting(animateExit); } - final ActivityRecord app = asActivityRecord(); - if (app != null) { - app.setVisible(false); - } - if (changed) { mWmService.mWindowPlacerLocked.performSurfacePlacement(); mWmService.updateFocusedWindowLocked(UPDATE_FOCUS_NORMAL, false /*updateInputWindows*/); } - - if (delayed) { - mDisplayContent.mExitingTokens.add(this); - } } /** @@ -723,7 +707,6 @@ class WindowToken extends WindowContainer<WindowState> { super.dump(pw, prefix, dumpAll); pw.print(prefix); pw.print("windows="); pw.println(mChildren); pw.print(prefix); pw.print("windowType="); pw.print(windowType); - pw.print(" hasVisible="); pw.print(hasVisible); if (waitingToShow) { pw.print(" waitingToShow=true"); } |
