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

Commit e3332341 authored by Andrii Kulian's avatar Andrii Kulian
Browse files

Limit black background to only base and starting windows

Show black background behind nav bar only behind windows
with type TYPE_APPLICATION_STARTING or TYPE_BASE_APPLICATION,
which corresponds to main window of an activity.

Bug: 64711770
Test: Go to Wallpapers app, select a static one, click "set" and check the background of the dialog.
Test: Open letterboxed app, go to/from Recents.
Change-Id: I42357a5df70b5dd58b422f31704c71d36074a50c
parent a3c2cee0
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -26,9 +26,8 @@ import android.view.Surface.OutOfResourcesException;
import android.view.SurfaceControl;
import android.view.SurfaceSession;

import static android.view.WindowManager.LayoutParams.FIRST_APPLICATION_WINDOW;
import static android.view.WindowManager.LayoutParams.LAST_APPLICATION_WINDOW;
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING;
import static android.view.WindowManager.LayoutParams.TYPE_BASE_APPLICATION;
import static android.view.WindowManagerPolicy.NAV_BAR_BOTTOM;
import static android.view.WindowManagerPolicy.NAV_BAR_LEFT;
import static android.view.WindowManagerPolicy.NAV_BAR_RIGHT;
@@ -73,9 +72,8 @@ class SurfaceControlWithBackground extends SurfaceControl {
        super(s, name, w, h, format, flags, windowType, ownerUid);

        // We should only show background behind app windows that are letterboxed in a task.
        if (!windowSurfaceController.mAnimator.mWin.isLetterboxedAppWindow()
                || windowType < FIRST_APPLICATION_WINDOW
                || windowType > LAST_APPLICATION_WINDOW) {
        if ((windowType != TYPE_BASE_APPLICATION && windowType != TYPE_APPLICATION_STARTING)
                || !windowSurfaceController.mAnimator.mWin.isLetterboxedAppWindow()) {
            return;
        }
        mWindowSurfaceController = windowSurfaceController;