diff options
Diffstat (limited to 'services/java/com/android/server/wm/WindowManagerService.java')
-rwxr-xr-x | services/java/com/android/server/wm/WindowManagerService.java | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 8c917c1..b3ac6f1 100755 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -479,6 +479,9 @@ public class WindowManagerService extends IWindowManager.Stub = new ArrayList<IRotationWatcher>(); int mDeferredRotationPauseCount; + final Rect mSystemDecorRect = new Rect(); + int mSystemDecorLayer = 0; + int mPendingLayoutChanges = 0; boolean mLayoutNeeded = true; boolean mTraversalScheduled = false; @@ -2646,7 +2649,7 @@ public class WindowManagerService extends IWindowManager.Stub public int relayoutWindow(Session session, IWindow client, int seq, WindowManager.LayoutParams attrs, int requestedWidth, int requestedHeight, int viewVisibility, int flags, - Rect outFrame, Rect outSystemInsets, Rect outContentInsets, + Rect outFrame, Rect outContentInsets, Rect outVisibleInsets, Configuration outConfig, Surface outSurface) { boolean displayed = false; boolean inTouchMode; @@ -2938,7 +2941,6 @@ public class WindowManagerService extends IWindowManager.Stub win.mAppToken.updateReportedVisibilityLocked(); } outFrame.set(win.mCompatFrame); - outSystemInsets.set(win.mSystemInsets); outContentInsets.set(win.mContentInsets); outVisibleInsets.set(win.mVisibleInsets); if (localLOGV) Slog.v( @@ -7716,6 +7718,7 @@ public class WindowManagerService extends IWindowManager.Stub } mPolicy.beginLayoutLw(dw, dh, mRotation); + mSystemDecorLayer = mPolicy.getSystemDecorRectLw(mSystemDecorRect); int seq = mLayoutSeq+1; if (seq < 0) seq = 0; @@ -8178,8 +8181,6 @@ public class WindowManagerService extends IWindowManager.Stub private void updateResizingWindows(final WindowState w) { final WindowStateAnimator winAnimator = w.mWinAnimator; if (w.mHasSurface && !w.mAppFreezing && w.mLayoutSeq == mLayoutSeq) { - w.mSystemInsetsChanged |= - !w.mLastSystemInsets.equals(w.mSystemInsets); w.mContentInsetsChanged |= !w.mLastContentInsets.equals(w.mContentInsets); w.mVisibleInsetsChanged |= @@ -8196,8 +8197,7 @@ public class WindowManagerService extends IWindowManager.Stub + ": configChanged=" + configChanged + " last=" + w.mLastFrame + " frame=" + w.mFrame); w.mLastFrame.set(w.mFrame); - if (w.mSystemInsetsChanged - || w.mContentInsetsChanged + if (w.mContentInsetsChanged || w.mVisibleInsetsChanged || winAnimator.mSurfaceResized || configChanged) { @@ -8209,7 +8209,6 @@ public class WindowManagerService extends IWindowManager.Stub + " configChanged=" + configChanged); } - w.mLastSystemInsets.set(w.mSystemInsets); w.mLastContentInsets.set(w.mContentInsets); w.mLastVisibleInsets.set(w.mVisibleInsets); makeWindowFreezingScreenIfNeededLocked(w); @@ -8593,11 +8592,10 @@ public class WindowManagerService extends IWindowManager.Stub winAnimator.mDrawState == WindowStateAnimator.DRAW_PENDING) Slog.i( TAG, "Resizing " + win + " WITH DRAW PENDING"); win.mClient.resized((int)winAnimator.mSurfaceW, - (int)winAnimator.mSurfaceH, win.mLastSystemInsets, + (int)winAnimator.mSurfaceH, win.mLastContentInsets, win.mLastVisibleInsets, winAnimator.mDrawState == WindowStateAnimator.DRAW_PENDING, configChanged ? win.mConfiguration : null); - win.mSystemInsetsChanged = false; win.mContentInsetsChanged = false; win.mVisibleInsetsChanged = false; winAnimator.mSurfaceResized = false; @@ -9588,6 +9586,8 @@ public class WindowManagerService extends IWindowManager.Stub pw.print(" mInTouchMode="); pw.print(mInTouchMode); pw.print(" mLayoutSeq="); pw.println(mLayoutSeq); if (dumpAll) { + pw.print(" mSystemDecorRect="); pw.print(mSystemDecorRect.toShortString()); + pw.print(" mSystemDecorLayer="); pw.println(mSystemDecorLayer); if (mLastStatusBarVisibility != 0) { pw.print(" mLastStatusBarVisibility=0x"); pw.println(Integer.toHexString(mLastStatusBarVisibility)); |