Skip to content

Commit a1a1a1d

Browse files
Dianne HackbornAndroid (Google) Code Review
authored andcommitted
Merge "Fix issue #6955586: No navigation bar in landscape on tablets" into jb-mr1-dev
2 parents 6d00c72 + 5a052a4 commit a1a1a1d

File tree

1 file changed

+19
-14
lines changed

1 file changed

+19
-14
lines changed

services/java/com/android/server/wm/WindowManagerService.java

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5874,7 +5874,7 @@ public boolean updateRotationUncheckedLocked(boolean inTransaction) {
58745874
}
58755875
}
58765876

5877-
rebuildBlackFrame();
5877+
rebuildBlackFrameLocked();
58785878

58795879
final WindowList windows = displayContent.getWindowList();
58805880
for (int i = windows.size() - 1; i >= 0; i--) {
@@ -6891,6 +6891,8 @@ public void displayReady() {
68916891
displayReady(Display.DEFAULT_DISPLAY);
68926892

68936893
synchronized(mWindowMap) {
6894+
readForcedDisplaySizeAndDensityLocked(getDefaultDisplayContent());
6895+
68946896
WindowManager wm = (WindowManager)mContext.getSystemService(Context.WINDOW_SERVICE);
68956897
mDisplay = wm.getDefaultDisplay();
68966898
mIsTouchDevice = mContext.getPackageManager().hasSystemFeature(
@@ -6912,6 +6914,11 @@ public void displayReady() {
69126914
mPolicy.setInitialDisplaySize(mDisplay, displayContent.mInitialDisplayWidth,
69136915
displayContent.mInitialDisplayHeight, displayContent.mInitialDisplayDensity);
69146916
}
6917+
6918+
try {
6919+
mActivityManager.updateConfiguration(null);
6920+
} catch (RemoteException e) {
6921+
}
69156922
}
69166923

69176924
public void displayReady(int displayId) {
@@ -6930,15 +6937,6 @@ public void displayReady(int displayId) {
69306937
displayContent.mBaseDisplayDensity = displayContent.mInitialDisplayDensity;
69316938
}
69326939
}
6933-
6934-
try {
6935-
mActivityManager.updateConfiguration(null);
6936-
} catch (RemoteException e) {
6937-
}
6938-
6939-
synchronized (mWindowMap) {
6940-
readForcedDisplaySizeAndDensityLocked(getDisplayContent(displayId));
6941-
}
69426940
}
69436941

69446942
public void systemReady() {
@@ -7567,7 +7565,7 @@ public void setForcedDisplaySize(int displayId, int longDimen, int shortDimen) {
75677565
}
75687566
}
75697567

7570-
private void rebuildBlackFrame() {
7568+
private void rebuildBlackFrameLocked() {
75717569
if (mBlackFrame != null) {
75727570
mBlackFrame.kill();
75737571
mBlackFrame = null;
@@ -7579,6 +7577,13 @@ private void rebuildBlackFrame() {
75797577
int initW, initH, baseW, baseH;
75807578
final boolean rotated = (mRotation == Surface.ROTATION_90
75817579
|| mRotation == Surface.ROTATION_270);
7580+
if (DEBUG_BOOT) {
7581+
Slog.i(TAG, "BLACK FRAME: rotated=" + rotated + " init="
7582+
+ displayContent.mInitialDisplayWidth + "x"
7583+
+ displayContent.mInitialDisplayHeight + " base="
7584+
+ displayContent.mBaseDisplayWidth + "x"
7585+
+ displayContent.mBaseDisplayHeight);
7586+
}
75827587
if (rotated) {
75837588
initW = displayContent.mInitialDisplayHeight;
75847589
initH = displayContent.mInitialDisplayWidth;
@@ -7640,7 +7645,7 @@ private void readForcedDisplaySizeAndDensityLocked(final DisplayContent displayC
76407645
}
76417646
}
76427647
if (changed) {
7643-
reconfigureDisplayLocked(displayContent);
7648+
rebuildBlackFrameLocked();
76447649
}
76457650
}
76467651

@@ -7669,7 +7674,7 @@ public void setForcedDisplayDensity(int displayId, int density) {
76697674
final DisplayContent displayContent = getDisplayContent(displayId);
76707675
setForcedDisplayDensityLocked(displayContent, density);
76717676
Settings.Secure.putString(mContext.getContentResolver(),
7672-
Settings.Secure.DISPLAY_SIZE_FORCED, Integer.toString(density));
7677+
Settings.Secure.DISPLAY_DENSITY_FORCED, Integer.toString(density));
76737678
}
76747679
}
76757680

@@ -7712,7 +7717,7 @@ private void reconfigureDisplayLocked(DisplayContent displayContent) {
77127717
mH.sendEmptyMessage(H.SEND_NEW_CONFIGURATION);
77137718
}
77147719

7715-
rebuildBlackFrame();
7720+
rebuildBlackFrameLocked();
77167721

77177722
performLayoutAndPlaceSurfacesLocked();
77187723
}

0 commit comments

Comments
 (0)