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

Commit 5c00ce39 authored by Chong Zhang's avatar Chong Zhang Committed by android-build-merger
Browse files

Merge "Apply stack crop to docked stack during animation" into nyc-dev am: cac29467

am: 5968ffd4

* commit '5968ffd4':
  Apply stack crop to docked stack during animation
parents 9f09d21b 5968ffd4
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -1219,17 +1219,17 @@ class WindowStateAnimator {
        }

        // We don't apply the stack bounds crop if:
        // 1. The window is currently animating docked mode or in freeform mode, otherwise the
        // animating window will be suddenly (docked) or for whole animation (freeform) cut off.
        // (Note that we still need to apply the crop if the task being docked is non-resizeable,
        // in which case the task is running in fullscreen size but cropped to stack bounds.)
        // 1. The window is currently animating in freeform mode, otherwise the animating window
        // will be suddenly (docked) or for whole animation (freeform) cut off.
        // 2. The window that is being replaced during animation, because it was living in a
        // different stack. If we suddenly crop it to the new stack bounds, it might get cut off.
        // We don't want it to happen, so we let it ignore the stack bounds until it gets removed.
        // The window that will replace it will abide them.
        if (isAnimating() && (w.mWillReplaceWindow
                || (w.inDockedWorkspace() && task.isResizeable())
                || w.inFreeformWorkspace())) {
        // TODO: identify animations where we don't want to apply docked stack crop to the docked
        //       task. For example, if the app is going from freeform to docked mode, we may not
        //       want to apply the crop during the animation, since it will make the app appear
        //       cropped prematurely.
        if (isAnimating() && (w.mWillReplaceWindow || w.inFreeformWorkspace())) {
            return;
        }