summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/DisplayContent.java17
1 files changed, 10 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java
index 5d42d18a97ac..50ee9b9c808f 100644
--- a/services/core/java/com/android/server/wm/DisplayContent.java
+++ b/services/core/java/com/android/server/wm/DisplayContent.java
@@ -942,14 +942,17 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo
final SurfaceControl.Builder b = mWmService.makeSurfaceBuilder(mSession)
.setOpaque(true)
.setContainerLayer();
- mWindowingLayer = b.setName("Display Root").build();
- mOverlayLayer = b.setName("Display Overlays").build();
-
- getPendingTransaction().setLayer(mWindowingLayer, 0)
- .setLayerStack(mWindowingLayer, mDisplayId)
+ mSurfaceControl = b.setName("Root").setContainerLayer().build();
+ mWindowingLayer = b.setName("Display Windows").setParent(mSurfaceControl).build();
+ mOverlayLayer = b.setName("Display Overlays").setParent(mSurfaceControl).build();
+
+ getPendingTransaction()
+ .setLayer(mSurfaceControl, 0)
+ .setLayerStack(mSurfaceControl, mDisplayId)
+ .show(mSurfaceControl)
+ .setLayer(mWindowingLayer, 0)
.show(mWindowingLayer)
.setLayer(mOverlayLayer, 1)
- .setLayerStack(mOverlayLayer, mDisplayId)
.show(mOverlayLayer);
getPendingTransaction().apply();
@@ -4880,7 +4883,7 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo
mPortalWindowHandle = createPortalWindowHandle(sc.toString());
}
getPendingTransaction().setInputWindowInfo(sc, mPortalWindowHandle)
- .reparent(mWindowingLayer, sc).reparent(mOverlayLayer, sc);
+ .reparent(mSurfaceControl, sc);
}
/**