Merge "InsetsSourceProvider: Fix serverVisible update order in onPostLayout" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
dc9883a0bd
@@ -219,6 +219,8 @@ class InsetsSourceProvider {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setServerVisible(mWin.wouldBeVisibleIfPolicyIgnored() && mWin.isVisibleByPolicy()
|
||||||
|
&& !mWin.mGivenInsetsPending);
|
||||||
updateSourceFrame();
|
updateSourceFrame();
|
||||||
if (mControl != null) {
|
if (mControl != null) {
|
||||||
final Rect frame = mWin.getWindowFrames().mFrame;
|
final Rect frame = mWin.getWindowFrames().mFrame;
|
||||||
@@ -228,8 +230,6 @@ class InsetsSourceProvider {
|
|||||||
mStateController.notifyControlChanged(mControlTarget);
|
mStateController.notifyControlChanged(mControlTarget);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
setServerVisible(mWin.wouldBeVisibleIfPolicyIgnored() && mWin.isVisibleByPolicy()
|
|
||||||
&& !mWin.mGivenInsetsPending);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -54,7 +54,6 @@ public class InsetsSourceProviderTest extends WindowTestsBase {
|
|||||||
mSource.setVisible(true);
|
mSource.setVisible(true);
|
||||||
mProvider = new InsetsSourceProvider(mSource,
|
mProvider = new InsetsSourceProvider(mSource,
|
||||||
mDisplayContent.getInsetsStateController(), mDisplayContent);
|
mDisplayContent.getInsetsStateController(), mDisplayContent);
|
||||||
mProvider.setServerVisible(true);
|
|
||||||
mImeProvider = new InsetsSourceProvider(mImeSource,
|
mImeProvider = new InsetsSourceProvider(mImeSource,
|
||||||
mDisplayContent.getInsetsStateController(), mDisplayContent);
|
mDisplayContent.getInsetsStateController(), mDisplayContent);
|
||||||
}
|
}
|
||||||
@@ -106,6 +105,7 @@ public class InsetsSourceProviderTest extends WindowTestsBase {
|
|||||||
public void testPostLayout_frameProvider() {
|
public void testPostLayout_frameProvider() {
|
||||||
final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
|
final WindowState statusBar = createWindow(null, TYPE_APPLICATION, "statusBar");
|
||||||
statusBar.getFrameLw().set(0, 0, 500, 100);
|
statusBar.getFrameLw().set(0, 0, 500, 100);
|
||||||
|
statusBar.mHasSurface = true;
|
||||||
mProvider.setWindow(statusBar,
|
mProvider.setWindow(statusBar,
|
||||||
(displayFrames, windowState, rect) -> {
|
(displayFrames, windowState, rect) -> {
|
||||||
rect.set(10, 10, 20, 20);
|
rect.set(10, 10, 20, 20);
|
||||||
|
|||||||
Reference in New Issue
Block a user