Loading core/java/android/view/WindowManager.java +0 −7 Original line number Diff line number Diff line Loading @@ -691,13 +691,6 @@ public interface WindowManager extends ViewManager { */ public static final int FLAG_NEEDS_MENU_KEY = 0x08000000; /** Window flag: *sigh* The lock screen wants to continue running its * animation while it is fading. A kind-of hack to allow this. Maybe * in the future we just make this the default behavior. * * {@hide} */ public static final int FLAG_KEEP_SURFACE_WHILE_ANIMATING = 0x10000000; /** Window flag: special flag to limit the size of the window to be * original size ([320x480] x density). Used to create window for applications * running under compatibility mode. Loading policy/src/com/android/internal/policy/impl/KeyguardViewManager.java +0 −1 Original line number Diff line number Diff line Loading @@ -117,7 +117,6 @@ public class KeyguardViewManager implements KeyguardWindowController { final int stretch = ViewGroup.LayoutParams.MATCH_PARENT; int flags = WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN | WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER | WindowManager.LayoutParams.FLAG_KEEP_SURFACE_WHILE_ANIMATING | WindowManager.LayoutParams.FLAG_SLIPPERY /*| WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR*/ ; Loading services/java/com/android/server/wm/WindowManagerService.java +14 −32 Original line number Diff line number Diff line Loading @@ -1173,8 +1173,7 @@ public class WindowManagerService extends IWindowManager.Stub if (DEBUG_INPUT_METHOD) { Slog.i(TAG, "isVisibleOrAdding " + w + ": " + w.isVisibleOrAdding()); if (!w.isVisibleOrAdding()) { Slog.i(TAG, " mSurface=" + w.mWinAnimator.mSurface + " reportDestroy=" + w.mWinAnimator.mReportDestroySurface Slog.i(TAG, " mSurface=" + w.mWinAnimator.mSurface + " relayoutCalled=" + w.mRelayoutCalled + " viewVis=" + w.mViewVisibility + " policyVis=" + w.mPolicyVisibility + " attachHid=" + w.mAttachedHidden + " exiting=" + w.mExiting + " destroying=" + w.mDestroying); Loading Loading @@ -2651,7 +2650,7 @@ public class WindowManagerService extends IWindowManager.Stub int requestedHeight, int viewVisibility, int flags, Rect outFrame, Rect outContentInsets, Rect outVisibleInsets, Configuration outConfig, Surface outSurface) { boolean displayed = false; boolean toBeDisplayed = false; boolean inTouchMode; boolean configChanged; boolean surfaceChanged = false; Loading Loading @@ -2754,7 +2753,7 @@ public class WindowManagerService extends IWindowManager.Stub } if (viewVisibility == View.VISIBLE && (win.mAppToken == null || !win.mAppToken.clientHidden)) { displayed = !win.isVisibleLw(); toBeDisplayed = !win.isVisibleLw(); if (win.mExiting) { winAnimator.cancelExitAnimationForNextAnimationLocked(); win.mExiting = false; Loading @@ -2766,7 +2765,7 @@ public class WindowManagerService extends IWindowManager.Stub if (oldVisibility == View.GONE) { winAnimator.mEnterAnimationPending = true; } if (displayed) { if (toBeDisplayed) { if (win.isDrawnLw() && okToDisplay()) { winAnimator.applyEnterAnimationLocked(); } Loading @@ -2792,7 +2791,7 @@ public class WindowManagerService extends IWindowManager.Stub if ((attrChanges&WindowManager.LayoutParams.FORMAT_CHANGED) != 0) { // To change the format, we need to re-build the surface. winAnimator.destroySurfaceLocked(); displayed = true; toBeDisplayed = true; surfaceChanged = true; } try { Loading @@ -2802,8 +2801,6 @@ public class WindowManagerService extends IWindowManager.Stub Surface surface = winAnimator.createSurfaceLocked(); if (surface != null) { outSurface.copyFrom(surface); winAnimator.mReportDestroySurface = false; winAnimator.mSurfacePendingDestroy = false; if (SHOW_TRANSACTIONS) Slog.i(TAG, " OUT SURFACE " + outSurface + ": copied"); } else { Loading @@ -2820,7 +2817,7 @@ public class WindowManagerService extends IWindowManager.Stub Binder.restoreCallingIdentity(origId); return 0; } if (displayed) { if (toBeDisplayed) { focusMayChange = true; } if (win.mAttrs.type == TYPE_INPUT_METHOD Loading @@ -2845,11 +2842,10 @@ public class WindowManagerService extends IWindowManager.Stub winAnimator.mEnterAnimationPending = false; if (winAnimator.mSurface != null) { if (DEBUG_VISIBILITY) Slog.i(TAG, "Relayout invis " + win + ": mExiting=" + win.mExiting + " mSurfacePendingDestroy=" + winAnimator.mSurfacePendingDestroy); + ": mExiting=" + win.mExiting); // If we are not currently running the exit animation, we // need to see about starting one. if (!win.mExiting || winAnimator.mSurfacePendingDestroy) { if (!win.mExiting) { surfaceChanged = true; // Try starting an animation; if there isn't one, we // can destroy the surface right away. Loading @@ -2857,7 +2853,7 @@ public class WindowManagerService extends IWindowManager.Stub if (win.mAttrs.type == TYPE_APPLICATION_STARTING) { transit = WindowManagerPolicy.TRANSIT_PREVIEW_DONE; } if (!winAnimator.mSurfacePendingDestroy && win.isWinVisibleLw() && if (win.isWinVisibleLw() && winAnimator.applyAnimationLocked(transit, false)) { focusMayChange = true; win.mExiting = true; Loading @@ -2880,22 +2876,8 @@ public class WindowManagerService extends IWindowManager.Stub } } if (winAnimator.mSurface == null || (win.getAttrs().flags & WindowManager.LayoutParams.FLAG_KEEP_SURFACE_WHILE_ANIMATING) == 0 || winAnimator.mSurfacePendingDestroy) { // We could be called from a local process, which // means outSurface holds its current surface. Ensure the // surface object is cleared, but we don't necessarily want // it actually destroyed at this point. winAnimator.mSurfacePendingDestroy = false; outSurface.release(); if (DEBUG_VISIBILITY) Slog.i(TAG, "Releasing surface in: " + win); } else if (winAnimator.mSurface != null) { if (DEBUG_VISIBILITY) Slog.i(TAG, "Keeping surface, will report destroy: " + win); winAnimator.mReportDestroySurface = true; outSurface.copyFrom(winAnimator.mSurface); } } if (focusMayChange) { Loading @@ -2912,7 +2894,7 @@ public class WindowManagerService extends IWindowManager.Stub boolean assignLayers = false; if (imMayMove) { if (moveInputMethodWindowsIfNeededLocked(false) || displayed) { if (moveInputMethodWindowsIfNeededLocked(false) || toBeDisplayed) { // Little hack here -- we -should- be able to rely on the // function to return true if the IME has moved and needs // its layer recomputed. However, if the IME was hidden Loading @@ -2934,7 +2916,7 @@ public class WindowManagerService extends IWindowManager.Stub } configChanged = updateOrientationFromAppTokensLocked(false); performLayoutAndPlaceSurfacesLocked(); if (displayed && win.mIsWallpaper) { if (toBeDisplayed && win.mIsWallpaper) { updateWallpaperOffsetLocked(win, mAppDisplayWidth, mAppDisplayHeight, false); } if (win.mAppToken != null) { Loading Loading @@ -2970,7 +2952,7 @@ public class WindowManagerService extends IWindowManager.Stub Binder.restoreCallingIdentity(origId); return (inTouchMode ? WindowManagerImpl.RELAYOUT_RES_IN_TOUCH_MODE : 0) | (displayed ? WindowManagerImpl.RELAYOUT_RES_FIRST_TIME : 0) | (toBeDisplayed ? WindowManagerImpl.RELAYOUT_RES_FIRST_TIME : 0) | (surfaceChanged ? WindowManagerImpl.RELAYOUT_RES_SURFACE_CHANGED : 0) | (animating ? WindowManagerImpl.RELAYOUT_RES_ANIMATING : 0); } Loading services/java/com/android/server/wm/WindowState.java +1 −2 Original line number Diff line number Diff line Loading @@ -679,8 +679,7 @@ final class WindowState implements WindowManagerPolicy.WindowState { */ boolean isVisibleOrAdding() { final AppWindowToken atoken = mAppToken; return ((mHasSurface && !mWinAnimator.mReportDestroySurface) || (!mRelayoutCalled && mViewVisibility == View.VISIBLE)) return (mHasSurface || (!mRelayoutCalled && mViewVisibility == View.VISIBLE)) && mPolicyVisibility && !mAttachedHidden && (atoken == null || !atoken.hiddenRequested) && !mExiting && !mDestroying; Loading services/java/com/android/server/wm/WindowStateAnimator.java +2 −17 Original line number Diff line number Diff line Loading @@ -71,8 +71,6 @@ class WindowStateAnimator { Surface mSurface; Surface mPendingDestroySurface; boolean mReportDestroySurface; boolean mSurfacePendingDestroy; /** * Set when we have changed the size of the surface, to know that Loading Loading @@ -561,8 +559,6 @@ class WindowStateAnimator { Surface createSurfaceLocked() { if (mSurface == null) { mReportDestroySurface = false; mSurfacePendingDestroy = false; if (DEBUG_ANIM || DEBUG_ORIENTATION) Slog.i(TAG, "createSurface " + this + ": mDrawState=DRAW_PENDING"); mDrawState = DRAW_PENDING; Loading Loading @@ -694,7 +690,6 @@ class WindowStateAnimator { mWin.mAppToken.startingDisplayed = false; } mDrawState = NO_SURFACE; if (mSurface != null) { int i = mWin.mChildWindows.size(); Loading @@ -704,17 +699,6 @@ class WindowStateAnimator { c.mAttachedHidden = true; } if (mReportDestroySurface) { mReportDestroySurface = false; mSurfacePendingDestroy = true; try { mWin.mClient.dispatchGetNewSurface(); // We'll really destroy on the next time around. return; } catch (RemoteException e) { } } try { if (DEBUG_VISIBILITY) { RuntimeException e = null; Loading Loading @@ -760,6 +744,7 @@ class WindowStateAnimator { mSurfaceShown = false; mSurface = null; mWin.mHasSurface =false; mDrawState = NO_SURFACE; } } Loading Loading @@ -1147,7 +1132,7 @@ class WindowStateAnimator { } } else { if (DEBUG_ANIM) { Slog.v(TAG, "prepareSurface: No changes in animation for " + mWin); // Slog.v(TAG, "prepareSurface: No changes in animation for " + mWin); } displayed = true; } Loading Loading
core/java/android/view/WindowManager.java +0 −7 Original line number Diff line number Diff line Loading @@ -691,13 +691,6 @@ public interface WindowManager extends ViewManager { */ public static final int FLAG_NEEDS_MENU_KEY = 0x08000000; /** Window flag: *sigh* The lock screen wants to continue running its * animation while it is fading. A kind-of hack to allow this. Maybe * in the future we just make this the default behavior. * * {@hide} */ public static final int FLAG_KEEP_SURFACE_WHILE_ANIMATING = 0x10000000; /** Window flag: special flag to limit the size of the window to be * original size ([320x480] x density). Used to create window for applications * running under compatibility mode. Loading
policy/src/com/android/internal/policy/impl/KeyguardViewManager.java +0 −1 Original line number Diff line number Diff line Loading @@ -117,7 +117,6 @@ public class KeyguardViewManager implements KeyguardWindowController { final int stretch = ViewGroup.LayoutParams.MATCH_PARENT; int flags = WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN | WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER | WindowManager.LayoutParams.FLAG_KEEP_SURFACE_WHILE_ANIMATING | WindowManager.LayoutParams.FLAG_SLIPPERY /*| WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR*/ ; Loading
services/java/com/android/server/wm/WindowManagerService.java +14 −32 Original line number Diff line number Diff line Loading @@ -1173,8 +1173,7 @@ public class WindowManagerService extends IWindowManager.Stub if (DEBUG_INPUT_METHOD) { Slog.i(TAG, "isVisibleOrAdding " + w + ": " + w.isVisibleOrAdding()); if (!w.isVisibleOrAdding()) { Slog.i(TAG, " mSurface=" + w.mWinAnimator.mSurface + " reportDestroy=" + w.mWinAnimator.mReportDestroySurface Slog.i(TAG, " mSurface=" + w.mWinAnimator.mSurface + " relayoutCalled=" + w.mRelayoutCalled + " viewVis=" + w.mViewVisibility + " policyVis=" + w.mPolicyVisibility + " attachHid=" + w.mAttachedHidden + " exiting=" + w.mExiting + " destroying=" + w.mDestroying); Loading Loading @@ -2651,7 +2650,7 @@ public class WindowManagerService extends IWindowManager.Stub int requestedHeight, int viewVisibility, int flags, Rect outFrame, Rect outContentInsets, Rect outVisibleInsets, Configuration outConfig, Surface outSurface) { boolean displayed = false; boolean toBeDisplayed = false; boolean inTouchMode; boolean configChanged; boolean surfaceChanged = false; Loading Loading @@ -2754,7 +2753,7 @@ public class WindowManagerService extends IWindowManager.Stub } if (viewVisibility == View.VISIBLE && (win.mAppToken == null || !win.mAppToken.clientHidden)) { displayed = !win.isVisibleLw(); toBeDisplayed = !win.isVisibleLw(); if (win.mExiting) { winAnimator.cancelExitAnimationForNextAnimationLocked(); win.mExiting = false; Loading @@ -2766,7 +2765,7 @@ public class WindowManagerService extends IWindowManager.Stub if (oldVisibility == View.GONE) { winAnimator.mEnterAnimationPending = true; } if (displayed) { if (toBeDisplayed) { if (win.isDrawnLw() && okToDisplay()) { winAnimator.applyEnterAnimationLocked(); } Loading @@ -2792,7 +2791,7 @@ public class WindowManagerService extends IWindowManager.Stub if ((attrChanges&WindowManager.LayoutParams.FORMAT_CHANGED) != 0) { // To change the format, we need to re-build the surface. winAnimator.destroySurfaceLocked(); displayed = true; toBeDisplayed = true; surfaceChanged = true; } try { Loading @@ -2802,8 +2801,6 @@ public class WindowManagerService extends IWindowManager.Stub Surface surface = winAnimator.createSurfaceLocked(); if (surface != null) { outSurface.copyFrom(surface); winAnimator.mReportDestroySurface = false; winAnimator.mSurfacePendingDestroy = false; if (SHOW_TRANSACTIONS) Slog.i(TAG, " OUT SURFACE " + outSurface + ": copied"); } else { Loading @@ -2820,7 +2817,7 @@ public class WindowManagerService extends IWindowManager.Stub Binder.restoreCallingIdentity(origId); return 0; } if (displayed) { if (toBeDisplayed) { focusMayChange = true; } if (win.mAttrs.type == TYPE_INPUT_METHOD Loading @@ -2845,11 +2842,10 @@ public class WindowManagerService extends IWindowManager.Stub winAnimator.mEnterAnimationPending = false; if (winAnimator.mSurface != null) { if (DEBUG_VISIBILITY) Slog.i(TAG, "Relayout invis " + win + ": mExiting=" + win.mExiting + " mSurfacePendingDestroy=" + winAnimator.mSurfacePendingDestroy); + ": mExiting=" + win.mExiting); // If we are not currently running the exit animation, we // need to see about starting one. if (!win.mExiting || winAnimator.mSurfacePendingDestroy) { if (!win.mExiting) { surfaceChanged = true; // Try starting an animation; if there isn't one, we // can destroy the surface right away. Loading @@ -2857,7 +2853,7 @@ public class WindowManagerService extends IWindowManager.Stub if (win.mAttrs.type == TYPE_APPLICATION_STARTING) { transit = WindowManagerPolicy.TRANSIT_PREVIEW_DONE; } if (!winAnimator.mSurfacePendingDestroy && win.isWinVisibleLw() && if (win.isWinVisibleLw() && winAnimator.applyAnimationLocked(transit, false)) { focusMayChange = true; win.mExiting = true; Loading @@ -2880,22 +2876,8 @@ public class WindowManagerService extends IWindowManager.Stub } } if (winAnimator.mSurface == null || (win.getAttrs().flags & WindowManager.LayoutParams.FLAG_KEEP_SURFACE_WHILE_ANIMATING) == 0 || winAnimator.mSurfacePendingDestroy) { // We could be called from a local process, which // means outSurface holds its current surface. Ensure the // surface object is cleared, but we don't necessarily want // it actually destroyed at this point. winAnimator.mSurfacePendingDestroy = false; outSurface.release(); if (DEBUG_VISIBILITY) Slog.i(TAG, "Releasing surface in: " + win); } else if (winAnimator.mSurface != null) { if (DEBUG_VISIBILITY) Slog.i(TAG, "Keeping surface, will report destroy: " + win); winAnimator.mReportDestroySurface = true; outSurface.copyFrom(winAnimator.mSurface); } } if (focusMayChange) { Loading @@ -2912,7 +2894,7 @@ public class WindowManagerService extends IWindowManager.Stub boolean assignLayers = false; if (imMayMove) { if (moveInputMethodWindowsIfNeededLocked(false) || displayed) { if (moveInputMethodWindowsIfNeededLocked(false) || toBeDisplayed) { // Little hack here -- we -should- be able to rely on the // function to return true if the IME has moved and needs // its layer recomputed. However, if the IME was hidden Loading @@ -2934,7 +2916,7 @@ public class WindowManagerService extends IWindowManager.Stub } configChanged = updateOrientationFromAppTokensLocked(false); performLayoutAndPlaceSurfacesLocked(); if (displayed && win.mIsWallpaper) { if (toBeDisplayed && win.mIsWallpaper) { updateWallpaperOffsetLocked(win, mAppDisplayWidth, mAppDisplayHeight, false); } if (win.mAppToken != null) { Loading Loading @@ -2970,7 +2952,7 @@ public class WindowManagerService extends IWindowManager.Stub Binder.restoreCallingIdentity(origId); return (inTouchMode ? WindowManagerImpl.RELAYOUT_RES_IN_TOUCH_MODE : 0) | (displayed ? WindowManagerImpl.RELAYOUT_RES_FIRST_TIME : 0) | (toBeDisplayed ? WindowManagerImpl.RELAYOUT_RES_FIRST_TIME : 0) | (surfaceChanged ? WindowManagerImpl.RELAYOUT_RES_SURFACE_CHANGED : 0) | (animating ? WindowManagerImpl.RELAYOUT_RES_ANIMATING : 0); } Loading
services/java/com/android/server/wm/WindowState.java +1 −2 Original line number Diff line number Diff line Loading @@ -679,8 +679,7 @@ final class WindowState implements WindowManagerPolicy.WindowState { */ boolean isVisibleOrAdding() { final AppWindowToken atoken = mAppToken; return ((mHasSurface && !mWinAnimator.mReportDestroySurface) || (!mRelayoutCalled && mViewVisibility == View.VISIBLE)) return (mHasSurface || (!mRelayoutCalled && mViewVisibility == View.VISIBLE)) && mPolicyVisibility && !mAttachedHidden && (atoken == null || !atoken.hiddenRequested) && !mExiting && !mDestroying; Loading
services/java/com/android/server/wm/WindowStateAnimator.java +2 −17 Original line number Diff line number Diff line Loading @@ -71,8 +71,6 @@ class WindowStateAnimator { Surface mSurface; Surface mPendingDestroySurface; boolean mReportDestroySurface; boolean mSurfacePendingDestroy; /** * Set when we have changed the size of the surface, to know that Loading Loading @@ -561,8 +559,6 @@ class WindowStateAnimator { Surface createSurfaceLocked() { if (mSurface == null) { mReportDestroySurface = false; mSurfacePendingDestroy = false; if (DEBUG_ANIM || DEBUG_ORIENTATION) Slog.i(TAG, "createSurface " + this + ": mDrawState=DRAW_PENDING"); mDrawState = DRAW_PENDING; Loading Loading @@ -694,7 +690,6 @@ class WindowStateAnimator { mWin.mAppToken.startingDisplayed = false; } mDrawState = NO_SURFACE; if (mSurface != null) { int i = mWin.mChildWindows.size(); Loading @@ -704,17 +699,6 @@ class WindowStateAnimator { c.mAttachedHidden = true; } if (mReportDestroySurface) { mReportDestroySurface = false; mSurfacePendingDestroy = true; try { mWin.mClient.dispatchGetNewSurface(); // We'll really destroy on the next time around. return; } catch (RemoteException e) { } } try { if (DEBUG_VISIBILITY) { RuntimeException e = null; Loading Loading @@ -760,6 +744,7 @@ class WindowStateAnimator { mSurfaceShown = false; mSurface = null; mWin.mHasSurface =false; mDrawState = NO_SURFACE; } } Loading Loading @@ -1147,7 +1132,7 @@ class WindowStateAnimator { } } else { if (DEBUG_ANIM) { Slog.v(TAG, "prepareSurface: No changes in animation for " + mWin); // Slog.v(TAG, "prepareSurface: No changes in animation for " + mWin); } displayed = true; } Loading