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

Commit 4456f7d2 authored by Garfield Tan's avatar Garfield Tan Committed by Android (Google) Code Review
Browse files

Merge "Enable compositor shadow for freeform windows." into rvc-dev

parents c74baf48 7e1cb5c6
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -1631,9 +1631,7 @@ public class DecorView extends FrameLayout implements RootViewSurfaceTaker, Wind

        int opacity = PixelFormat.OPAQUE;
        final WindowConfiguration winConfig = getResources().getConfiguration().windowConfiguration;
        // TODO(b/149585281) remove when root task has the correct bounds for freeform
        final boolean renderShadowsInCompositor = mWindow.mRenderShadowsInCompositor
                && winConfig.getWindowingMode() != WINDOWING_MODE_FREEFORM;
        final boolean renderShadowsInCompositor = mWindow.mRenderShadowsInCompositor;
        // If we draw shadows in the compositor we don't need to force the surface to be
        // translucent.
        if (winConfig.hasWindowShadow() && !renderShadowsInCompositor) {
@@ -2427,8 +2425,7 @@ public class DecorView extends FrameLayout implements RootViewSurfaceTaker, Wind
    private void updateElevation() {
        final int windowingMode =
                getResources().getConfiguration().windowConfiguration.getWindowingMode();
        final boolean renderShadowsInCompositor = mWindow.mRenderShadowsInCompositor
                && windowingMode != WINDOWING_MODE_FREEFORM;
        final boolean renderShadowsInCompositor = mWindow.mRenderShadowsInCompositor;
        // If rendering shadows in the compositor, don't set an elevation on the view
        if (renderShadowsInCompositor) {
            return;
+2 −6
Original line number Diff line number Diff line
@@ -212,7 +212,6 @@ class Task extends WindowContainer<WindowContainer> {
    static final int INVALID_MIN_SIZE = -1;
    private float mShadowRadius = 0;
    private final Rect mLastSurfaceCrop = new Rect();
    private static final boolean ENABLE_FREEFORM_COMPOSITOR_SHADOWS = false;

    /**
     * The modes to control how the stack is moved to the front when calling {@link Task#reparent}.
@@ -2729,10 +2728,8 @@ class Task extends WindowContainer<WindowContainer> {
    }

    private void updateSurfaceCrop() {
        // TODO(b/149585281) remove when root task has the correct bounds for freeform
        // Only update the crop if we are drawing shadows on the task.
        if (mSurfaceControl == null || !mWmService.mRenderShadowsInCompositor
                || !isRootTask() || !ENABLE_FREEFORM_COMPOSITOR_SHADOWS) {
        if (mSurfaceControl == null || !mWmService.mRenderShadowsInCompositor || !isRootTask()) {
            return;
        }

@@ -4273,8 +4270,7 @@ class Task extends WindowContainer<WindowContainer> {
        // Get elevation for a specific windowing mode.
        if (inPinnedWindowingMode()) {
            elevation = PINNED_WINDOWING_MODE_ELEVATION_IN_DIP;
        } else if (ENABLE_FREEFORM_COMPOSITOR_SHADOWS && inFreeformWindowingMode()) {
            // TODO(b/149585281) remove when root task has the correct bounds for freeform
        } else if (inFreeformWindowingMode()) {
            elevation = taskIsFocused
                    ? DECOR_SHADOW_FOCUSED_HEIGHT_IN_DIP : DECOR_SHADOW_UNFOCUSED_HEIGHT_IN_DIP;
        } else {