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

Commit ef7f39f4 authored by Robert Carr's avatar Robert Carr Committed by android-build-merger
Browse files

Implement construction of container layers

am: c1ea1044

Change-Id: I5a8f0080051d2ae66a4a2f99c4a88ef452f0a467
parents 46efaea2 c1ea1044
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -267,6 +267,13 @@ public class SurfaceControl implements Parcelable {
     */
    public static final int FX_SURFACE_DIM = 0x00020000;

    /**
     * Surface creation flag: Creates a container surface.
     * This surface will have no buffers and will only be used
     * as a container for other surfaces, or for its InputInfo.
     */
    public static final int FX_SURFACE_CONTAINER = 0x00080000;

    /**
     * Mask used for FX values above.
     *
@@ -530,6 +537,23 @@ public class SurfaceControl implements Parcelable {
            return this;
        }

        /**
         * Indicates whether a 'ContainerLayer' is to be constructed.
         *
         * 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.
         */
        public Builder setContainerLayer(boolean isContainerLayer) {
            if (isContainerLayer) {
                mFlags |= FX_SURFACE_CONTAINER;
            } else {
                mFlags &= ~FX_SURFACE_CONTAINER;
            }
            return this;
        }

        /**
         * Set 'Surface creation flags' such as {@link HIDDEN}, {@link SECURE}.
         *