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

Commit 9c9b866e authored by Jorim Jaggi's avatar Jorim Jaggi Committed by Android (Google) Code Review
Browse files

Merge "Revert "Make WindowContainer surfaces container layers by default.""

parents d243eccc f6ef1833
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -363,7 +363,7 @@ public class ActivityView extends ViewGroup {
        final IWindowManager wm = WindowManagerGlobal.getWindowManagerService();

        mRootSurfaceControl = new SurfaceControl.Builder(surfaceSession)
                .setContainerLayer()
                .setContainerLayer(true)
                .setParent(mSurfaceView.getSurfaceControl())
                .setName(DISPLAY_NAME)
                .build();
+18 −22
Original line number Diff line number Diff line
@@ -502,16 +502,7 @@ public final class SurfaceControl implements Parcelable {
            }
            mWidth = width;
            mHeight = height;
            // set this as a buffer layer since we are specifying a buffer size.
            return setFlags(FX_SURFACE_NORMAL, FX_SURFACE_MASK);
        }

        /**
         * Set the initial size of the controlled surface's buffers in pixels.
         */
        private void unsetBufferSize() {
            mWidth = 0;
            mHeight = 0;
            return this;
        }

        /**
@@ -629,11 +620,16 @@ public final class SurfaceControl implements Parcelable {
         * Color layers will not have an associated BufferQueue and will instead always render a
         * solid color (that is, solid before plane alpha). Currently that color is black.
         *
         * @param isColorLayer Whether to create a color layer.
         * @hide
         */
        public Builder setColorLayer() {
            unsetBufferSize();
            return setFlags(FX_SURFACE_DIM, FX_SURFACE_MASK);
        public Builder setColorLayer(boolean isColorLayer) {
            if (isColorLayer) {
                mFlags |= FX_SURFACE_DIM;
            } else {
                mFlags &= ~FX_SURFACE_DIM;
            }
            return this;
        }

        private boolean isColorLayerSet() {
@@ -646,11 +642,16 @@ public final class SurfaceControl implements Parcelable {
         * Container layers will not be rendered in any fashion and instead are used
         * as a parent of renderable layers.
         *
         * @param isContainerLayer Whether to create a container layer.
         * @hide
         */
        public Builder setContainerLayer() {
            unsetBufferSize();
            return setFlags(FX_SURFACE_CONTAINER, FX_SURFACE_MASK);
        public Builder setContainerLayer(boolean isContainerLayer) {
            if (isContainerLayer) {
                mFlags |= FX_SURFACE_CONTAINER;
            } else {
                mFlags &= ~FX_SURFACE_CONTAINER;
            }
            return this;
        }

        private boolean isContainerLayerSet() {
@@ -658,7 +659,7 @@ public final class SurfaceControl implements Parcelable {
        }

        /**
         * Set 'Surface creation flags' such as {@link #HIDDEN}, {@link #SECURE}.
         * Set 'Surface creation flags' such as {@link HIDDEN}, {@link SECURE}.
         *
         * TODO: Finish conversion to individual builder methods?
         * @param flags The combined flags
@@ -668,11 +669,6 @@ public final class SurfaceControl implements Parcelable {
            mFlags = flags;
            return this;
        }

        private Builder setFlags(int flags, int mask) {
            mFlags = (mFlags & ~mask) | flags;
            return this;
        }
    }

    /**
+2 −1
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.graphics.Region;
import android.graphics.RenderNode;
import android.os.Build;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
import android.os.SystemClock;
import android.util.AttributeSet;
@@ -587,7 +588,7 @@ public class SurfaceView extends View implements ViewRootImpl.WindowStoppedCallb
                    mBackgroundControl = new SurfaceControl.Builder(mSurfaceSession)
                        .setName("Background for -" + name)
                        .setOpaque(true)
                        .setColorLayer()
                        .setColorLayer(true)
                        .setParent(mSurfaceControl)
                        .build();

+1 −1
Original line number Diff line number Diff line
@@ -575,7 +575,7 @@ final class ColorFade {
                final SurfaceControl.Builder builder =
                        new SurfaceControl.Builder(mSurfaceSession).setName("ColorFade");
                if (mMode == MODE_FADE) {
                    builder.setColorLayer();
                    builder.setColorLayer(true);
                } else {
                    builder.setBufferSize(mDisplayWidth, mDisplayHeight);
                }
+1 −1
Original line number Diff line number Diff line
@@ -48,7 +48,7 @@ public class BlackFrame {

            surface = dc.makeOverlay()
                    .setName("BlackSurface")
                    .setColorLayer()
                    .setColorLayer(true)
                    .setParent(null) // TODO: Work-around for b/69259549
                    .build();
            transaction.setWindowCrop(surface, w, h);
Loading