Merge "Clean-up DisplayPolicy"
This commit is contained in:
@@ -93,7 +93,6 @@ import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYOUT;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
|
||||
|
||||
import android.Manifest.permission;
|
||||
import android.annotation.NonNull;
|
||||
import android.annotation.Nullable;
|
||||
import android.annotation.Px;
|
||||
@@ -103,7 +102,6 @@ import android.app.LoadedApk;
|
||||
import android.app.ResourcesManager;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Insets;
|
||||
import android.graphics.PixelFormat;
|
||||
@@ -843,11 +841,6 @@ public class DisplayPolicy {
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean hasStatusBarServicePermission(int pid, int uid) {
|
||||
return mContext.checkPermission(permission.STATUS_BAR_SERVICE, pid, uid)
|
||||
== PackageManager.PERMISSION_GRANTED;
|
||||
}
|
||||
|
||||
/**
|
||||
* Only trusted overlays are allowed to use FLAG_SLIPPERY.
|
||||
*/
|
||||
@@ -1098,9 +1091,10 @@ public class DisplayPolicy {
|
||||
mNavigationBar = win;
|
||||
mDisplayContent.setInsetProvider(ITYPE_NAVIGATION_BAR, win,
|
||||
(displayFrames, windowState, inOutFrame) -> {
|
||||
inOutFrame.inset(windowState.getLayoutingAttrs(
|
||||
displayFrames.mRotation).providedInternalInsets);
|
||||
|
||||
if (!mNavButtonForcedVisible) {
|
||||
inOutFrame.inset(windowState.getLayoutingAttrs(
|
||||
displayFrames.mRotation).providedInternalInsets);
|
||||
}
|
||||
},
|
||||
|
||||
// For IME we use regular frame.
|
||||
@@ -1799,7 +1793,6 @@ public class DisplayPolicy {
|
||||
final int upsideDownRotation = displayRotation.getUpsideDownRotation();
|
||||
final int landscapeRotation = displayRotation.getLandscapeRotation();
|
||||
final int seascapeRotation = displayRotation.getSeascapeRotation();
|
||||
final int uiMode = mService.mPolicy.getUiMode();
|
||||
|
||||
if (hasStatusBar()) {
|
||||
mStatusBarHeightForRotation[portraitRotation] =
|
||||
@@ -2152,16 +2145,6 @@ public class DisplayPolicy {
|
||||
return mNavigationBarPosition;
|
||||
}
|
||||
|
||||
@WindowManagerPolicy.AltBarPosition
|
||||
int getAlternateStatusBarPosition() {
|
||||
return mStatusBarAltPosition;
|
||||
}
|
||||
|
||||
@WindowManagerPolicy.AltBarPosition
|
||||
int getAlternateNavBarPosition() {
|
||||
return mNavigationBarAltPosition;
|
||||
}
|
||||
|
||||
/**
|
||||
* A new window has been focused.
|
||||
*/
|
||||
|
||||
@@ -34,13 +34,8 @@ import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_INSET_PARENT_
|
||||
import static android.view.WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING;
|
||||
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION;
|
||||
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY;
|
||||
import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL;
|
||||
import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR;
|
||||
import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR_SUB_PANEL;
|
||||
import static android.view.WindowManagerPolicyConstants.ALT_BAR_BOTTOM;
|
||||
import static android.view.WindowManagerPolicyConstants.ALT_BAR_LEFT;
|
||||
import static android.view.WindowManagerPolicyConstants.ALT_BAR_RIGHT;
|
||||
import static android.view.WindowManagerPolicyConstants.ALT_BAR_TOP;
|
||||
|
||||
import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn;
|
||||
import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn;
|
||||
@@ -60,7 +55,6 @@ import android.platform.test.annotations.Presubmit;
|
||||
import android.util.Pair;
|
||||
import android.view.DisplayCutout;
|
||||
import android.view.DisplayInfo;
|
||||
import android.view.Gravity;
|
||||
import android.view.InsetsState;
|
||||
import android.view.InsetsVisibilities;
|
||||
import android.view.PrivacyIndicatorBounds;
|
||||
@@ -237,47 +231,6 @@ public class DisplayPolicyLayoutTests extends DisplayPolicyTestsBase {
|
||||
expectThrows(IllegalArgumentException.class, () -> addWindow(win2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void addingWindow_variousGravities_alternateBarPosUpdated() {
|
||||
mDisplayPolicy.removeWindowLw(mNavBarWindow); // Removes the existing one.
|
||||
|
||||
WindowState win1 = createWindow(null, TYPE_NAVIGATION_BAR_PANEL, "NavBarPanel1");
|
||||
win1.mAttrs.providesInsetsTypes = new int[]{ITYPE_NAVIGATION_BAR};
|
||||
win1.mAttrs.gravity = Gravity.TOP;
|
||||
win1.getFrame().set(0, 0, 200, 500);
|
||||
addWindow(win1);
|
||||
|
||||
assertEquals(mDisplayPolicy.getAlternateNavBarPosition(), ALT_BAR_TOP);
|
||||
mDisplayPolicy.removeWindowLw(win1);
|
||||
|
||||
WindowState win2 = createWindow(null, TYPE_NAVIGATION_BAR_PANEL, "NavBarPanel2");
|
||||
win2.mAttrs.providesInsetsTypes = new int[]{ITYPE_NAVIGATION_BAR};
|
||||
win2.mAttrs.gravity = Gravity.BOTTOM;
|
||||
win2.getFrame().set(0, 0, 200, 500);
|
||||
addWindow(win2);
|
||||
|
||||
assertEquals(mDisplayPolicy.getAlternateNavBarPosition(), ALT_BAR_BOTTOM);
|
||||
mDisplayPolicy.removeWindowLw(win2);
|
||||
|
||||
WindowState win3 = createWindow(null, TYPE_NAVIGATION_BAR_PANEL, "NavBarPanel3");
|
||||
win3.mAttrs.providesInsetsTypes = new int[]{ITYPE_NAVIGATION_BAR};
|
||||
win3.mAttrs.gravity = Gravity.LEFT;
|
||||
win3.getFrame().set(0, 0, 200, 500);
|
||||
addWindow(win3);
|
||||
|
||||
assertEquals(mDisplayPolicy.getAlternateNavBarPosition(), ALT_BAR_LEFT);
|
||||
mDisplayPolicy.removeWindowLw(win3);
|
||||
|
||||
WindowState win4 = createWindow(null, TYPE_NAVIGATION_BAR_PANEL, "NavBarPanel4");
|
||||
win4.mAttrs.providesInsetsTypes = new int[]{ITYPE_NAVIGATION_BAR};
|
||||
win4.mAttrs.gravity = Gravity.RIGHT;
|
||||
win4.getFrame().set(0, 0, 200, 500);
|
||||
addWindow(win4);
|
||||
|
||||
assertEquals(mDisplayPolicy.getAlternateNavBarPosition(), ALT_BAR_RIGHT);
|
||||
mDisplayPolicy.removeWindowLw(win4);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void layoutWindowLw_fitStatusBars() {
|
||||
mWindow.mAttrs.setFitInsetsTypes(Type.statusBars());
|
||||
|
||||
Reference in New Issue
Block a user