Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d9877f0e authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "WindowlessWindowManager: Set size when creating surface" into rvc-dev...

Merge "WindowlessWindowManager: Set size when creating surface" into rvc-dev am: 58c7846f am: e9b6fa5d

Change-Id: I63c3b14ebb879c892afbf4585d9545f3db4f04b0
parents 7b90ccb0 e9b6fa5d
Loading
Loading
Loading
Loading
+14 −7
Original line number Diff line number Diff line
@@ -136,6 +136,7 @@ public class WindowlessWindowManager implements IWindowSession {
        final SurfaceControl.Builder b = new SurfaceControl.Builder(mSurfaceSession)
                .setParent(mRootSurface)
                .setFormat(attrs.format)
                .setBufferSize(getSurfaceWidth(attrs), getSurfaceHeight(attrs))
                .setName(attrs.getTitle().toString());
        final SurfaceControl sc = b.build();

@@ -242,13 +243,8 @@ public class WindowlessWindowManager implements IWindowSession {
        WindowManager.LayoutParams attrs = state.mParams;

        if (viewFlags == View.VISIBLE) {
            final Rect surfaceInsets = attrs.surfaceInsets;
            int width = surfaceInsets != null
                    ? attrs.width + surfaceInsets.left + surfaceInsets.right : attrs.width;
            int height = surfaceInsets != null
                    ? attrs.height + surfaceInsets.top + surfaceInsets.bottom : attrs.height;

            t.setBufferSize(sc, width, height).setOpaque(sc, isOpaque(attrs)).show(sc).apply();
            t.setBufferSize(sc, getSurfaceWidth(attrs), getSurfaceHeight(attrs))
                    .setOpaque(sc, isOpaque(attrs)).show(sc).apply();
            outSurfaceControl.copyFrom(sc);
        } else {
            t.hide(sc).apply();
@@ -444,4 +440,15 @@ public class WindowlessWindowManager implements IWindowSession {
    public android.os.IBinder asBinder() {
        return null;
    }

    private int getSurfaceWidth(WindowManager.LayoutParams attrs) {
      final Rect surfaceInsets = attrs.surfaceInsets;
      return surfaceInsets != null
          ? attrs.width + surfaceInsets.left + surfaceInsets.right : attrs.width;
    }
    private int getSurfaceHeight(WindowManager.LayoutParams attrs) {
      final Rect surfaceInsets = attrs.surfaceInsets;
      return surfaceInsets != null
          ? attrs.height + surfaceInsets.top + surfaceInsets.bottom : attrs.height;
    }
}
+0 −1
Original line number Diff line number Diff line
@@ -156,4 +156,3 @@ public class ShellRoot {
        }
    }
}