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

Commit 018ee76e authored by Matthew Ng's avatar Matthew Ng Committed by android-build-merger
Browse files

Merge "Update the app window's thumbnail layer after starting window is removed" into oc-dev

am: 052ff89f

Change-Id: I7a622e8e4fee766619828831315d11db1ace6ec9
parents bfea5cdb 052ff89f
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -78,6 +78,9 @@ public class AppWindowAnimator {
    // requires that the duration of the two animations are the same.
    SurfaceControl thumbnail;
    int thumbnailTransactionSeq;
    // TODO(b/62029108): combine both members into a private one. Create a member function to set
    // the thumbnail layer to +1 to the highest layer position and replace all setter instances
    // with this function. Remove all unnecessary calls to both variables in other classes.
    int thumbnailLayer;
    int thumbnailForceAboveLayer;
    Animation thumbnailAnimation;
+14 −3
Original line number Diff line number Diff line
@@ -257,9 +257,20 @@ class WindowLayersController {
        w.mLayer = layer;
        w.mWinAnimator.mAnimLayer = w.getAnimLayerAdjustment()
                + w.getSpecialWindowAnimLayerAdjustment();
        if (w.mAppToken != null && w.mAppToken.mAppAnimator.thumbnailForceAboveLayer > 0
                && w.mWinAnimator.mAnimLayer > w.mAppToken.mAppAnimator.thumbnailForceAboveLayer) {
        if (w.mAppToken != null && w.mAppToken.mAppAnimator.thumbnailForceAboveLayer > 0) {
            if (w.mWinAnimator.mAnimLayer > w.mAppToken.mAppAnimator.thumbnailForceAboveLayer) {
                w.mAppToken.mAppAnimator.thumbnailForceAboveLayer = w.mWinAnimator.mAnimLayer;
            }
            // TODO(b/62029108): the entire contents of the if statement should call the refactored
            // function to set the thumbnail layer for w.AppToken
            int highestLayer = w.mAppToken.getHighestAnimLayer();
            if (highestLayer > 0) {
                if (w.mAppToken.mAppAnimator.thumbnail != null
                        && w.mAppToken.mAppAnimator.thumbnailForceAboveLayer != highestLayer) {
                    w.mAppToken.mAppAnimator.thumbnailForceAboveLayer = highestLayer;
                    w.mAppToken.mAppAnimator.thumbnail.setLayer(highestLayer + 1);
                }
            }
        }
    }
}