Loading services/core/java/com/android/server/wm/WindowState.java +12 −2 Original line number Diff line number Diff line Loading @@ -729,8 +729,18 @@ final class WindowState implements WindowManagerPolicy.WindowState { mVisibleFrame.set(mContentFrame); mStableFrame.set(mContentFrame); } else if (mAttrs.type == TYPE_DOCK_DIVIDER) { if (isVisibleLw()) { // We don't adjust the dock divider frame for reasons other than performance. The // real reason is that if it gets adjusted before it is shown for the first time, // it would get size (0, 0). This causes a problem when we finally show the dock // divider and try to draw to it. We do set the surface size at that moment to // the correct size, but it's too late for the Surface Flinger to make it // available for view rendering and as a result the renderer receives size 1, 1. // This way we just keep the divider at the original size and Surface Flinger // will return the correct value to the renderer. mDisplayContent.getDockedDividerController().positionDockedStackedDivider(mFrame); mContentFrame.set(mFrame); } } else { mContentFrame.set(Math.max(mContentFrame.left, mFrame.left), Math.max(mContentFrame.top, mFrame.top), Loading Loading
services/core/java/com/android/server/wm/WindowState.java +12 −2 Original line number Diff line number Diff line Loading @@ -729,8 +729,18 @@ final class WindowState implements WindowManagerPolicy.WindowState { mVisibleFrame.set(mContentFrame); mStableFrame.set(mContentFrame); } else if (mAttrs.type == TYPE_DOCK_DIVIDER) { if (isVisibleLw()) { // We don't adjust the dock divider frame for reasons other than performance. The // real reason is that if it gets adjusted before it is shown for the first time, // it would get size (0, 0). This causes a problem when we finally show the dock // divider and try to draw to it. We do set the surface size at that moment to // the correct size, but it's too late for the Surface Flinger to make it // available for view rendering and as a result the renderer receives size 1, 1. // This way we just keep the divider at the original size and Surface Flinger // will return the correct value to the renderer. mDisplayContent.getDockedDividerController().positionDockedStackedDivider(mFrame); mContentFrame.set(mFrame); } } else { mContentFrame.set(Math.max(mContentFrame.left, mFrame.left), Math.max(mContentFrame.top, mFrame.top), Loading