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

Commit 11d3d941 authored by Evan Rosky's avatar Evan Rosky Committed by Automerger Merge Worker
Browse files

Merge "Fix checking crop region for home/recents" into rvc-dev am: 81fa33a7 am: a49e0954

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11886045

Change-Id: Ie3466a8426f70dd890aced2c966a6749e90ea903
parents 617e8086 a49e0954
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -2927,9 +2927,17 @@ class Task extends WindowContainer<WindowContainer> {
        // Don't crop HOME/RECENTS windows to stack bounds. This is because in split-screen
        // they extend past their stack and sysui uses the stack surface to control cropping.
        // TODO(b/158242495): get rid of this when drag/drop can use surface bounds.
        final boolean isTopHomeOrRecents = (isActivityTypeHome() || isActivityTypeRecents())
                && getRootTask().getTopMostTask() == this;
        return isResizeable() && !isTopHomeOrRecents;
        if (isActivityTypeHome() || isActivityTypeRecents()) {
            // Make sure this is the top-most non-organizer root task (if not top-most, it means
            // another translucent task could be above this, so this needs to stay cropped.
            final Task rootTask = getRootTask();
            final Task topNonOrgTask =
                    rootTask.mCreatedByOrganizer ? rootTask.getTopMostTask() : rootTask;
            if (isDescendantOf(topNonOrgTask)) {
                return false;
            }
        }
        return isResizeable();
    }

    /**
+1 −0
Original line number Diff line number Diff line
@@ -3416,6 +3416,7 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP
    private void setTouchableRegionCropIfNeeded(InputWindowHandle handle) {
        final Task task = getTask();
        if (task == null || !task.cropWindowsToStackBounds()) {
            handle.setTouchableRegionCrop(null);
            return;
        }