Merge "Avoid changing z-order of overlay layer after resizing display" into udc-qpr-dev

This commit is contained in:
Riddle Hsu
2023-07-04 01:53:52 +00:00
committed by Android (Google) Code Review
2 changed files with 12 additions and 1 deletions

View File

@@ -2270,7 +2270,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
// transitions anyways). // transitions anyways).
return wc.getParent().asDisplayContent().getWindowingLayer(); return wc.getParent().asDisplayContent().getWindowingLayer();
} }
return wc.getParent().getSurfaceControl(); return wc.getParentSurfaceControl();
} }
/** /**

View File

@@ -388,12 +388,23 @@ class WindowToken extends WindowContainer<WindowState> {
@Override @Override
SurfaceControl.Builder makeSurface() { SurfaceControl.Builder makeSurface() {
final SurfaceControl.Builder builder = super.makeSurface(); final SurfaceControl.Builder builder = super.makeSurface();
// The overlay may use COLOR_MODE_A8 that needs to be at the top of the display to avoid
// additional memory usage, see b/235601833. Note that getParentSurfaceControl() must use
// the same parent.
if (mRoundedCornerOverlay) { if (mRoundedCornerOverlay) {
builder.setParent(null); builder.setParent(null);
} }
return builder; return builder;
} }
@Override
public SurfaceControl getParentSurfaceControl() {
if (mRoundedCornerOverlay) {
return null;
}
return super.getParentSurfaceControl();
}
boolean isClientVisible() { boolean isClientVisible() {
return mClientVisible; return mClientVisible;
} }