Merge "Always copy sources to outInsetsState before writeToParcel" into tm-qpr-dev
This commit is contained in:
@@ -1866,7 +1866,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
displayContent.getInsetsStateController().updateAboveInsetsState(
|
displayContent.getInsetsStateController().updateAboveInsetsState(
|
||||||
false /* notifyInsetsChanged */);
|
false /* notifyInsetsChanged */);
|
||||||
|
|
||||||
outInsetsState.set(win.getCompatInsetsState(), win.isClientLocal());
|
outInsetsState.set(win.getCompatInsetsState(), true /* copySources */);
|
||||||
getInsetsSourceControls(win, outActiveControls);
|
getInsetsSourceControls(win, outActiveControls);
|
||||||
|
|
||||||
if (win.mLayoutAttached) {
|
if (win.mLayoutAttached) {
|
||||||
@@ -2560,7 +2560,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (outInsetsState != null) {
|
if (outInsetsState != null) {
|
||||||
outInsetsState.set(win.getCompatInsetsState(), win.isClientLocal());
|
outInsetsState.set(win.getCompatInsetsState(), true /* copySources */);
|
||||||
}
|
}
|
||||||
|
|
||||||
ProtoLog.v(WM_DEBUG_FOCUS, "Relayout of %s: focusMayChange=%b",
|
ProtoLog.v(WM_DEBUG_FOCUS, "Relayout of %s: focusMayChange=%b",
|
||||||
@@ -8878,7 +8878,6 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
@Override
|
@Override
|
||||||
public boolean getWindowInsets(WindowManager.LayoutParams attrs, int displayId,
|
public boolean getWindowInsets(WindowManager.LayoutParams attrs, int displayId,
|
||||||
InsetsState outInsetsState) {
|
InsetsState outInsetsState) {
|
||||||
final boolean fromLocal = Binder.getCallingPid() == MY_PID;
|
|
||||||
final int uid = Binder.getCallingUid();
|
final int uid = Binder.getCallingUid();
|
||||||
final long origId = Binder.clearCallingIdentity();
|
final long origId = Binder.clearCallingIdentity();
|
||||||
try {
|
try {
|
||||||
@@ -8892,10 +8891,8 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
final float overrideScale = mAtmService.mCompatModePackages.getCompatScale(
|
final float overrideScale = mAtmService.mCompatModePackages.getCompatScale(
|
||||||
attrs.packageName, uid);
|
attrs.packageName, uid);
|
||||||
final InsetsState state = dc.getInsetsPolicy().getInsetsForWindowMetrics(attrs);
|
final InsetsState state = dc.getInsetsPolicy().getInsetsForWindowMetrics(attrs);
|
||||||
final boolean hasCompatScale =
|
outInsetsState.set(state, true /* copySources */);
|
||||||
WindowState.hasCompatScale(attrs, token, overrideScale);
|
if (WindowState.hasCompatScale(attrs, token, overrideScale)) {
|
||||||
outInsetsState.set(state, hasCompatScale || fromLocal);
|
|
||||||
if (hasCompatScale) {
|
|
||||||
final float compatScale = token != null && token.hasSizeCompatBounds()
|
final float compatScale = token != null && token.hasSizeCompatBounds()
|
||||||
? token.getSizeCompatScale() * overrideScale
|
? token.getSizeCompatScale() * overrideScale
|
||||||
: overrideScale;
|
: overrideScale;
|
||||||
|
|||||||
Reference in New Issue
Block a user