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

Commit 1099f314 authored by Mateusz Cicheński's avatar Mateusz Cicheński Committed by Automerger Merge Worker
Browse files

Merge "Animate PiP away on inset changes." into tm-qpr-dev am: 3aac1079

parents 2d4b3f6d 3aac1079
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -612,9 +612,24 @@ public class PipController implements PipTransitionController.PipTransitionCallb
                new DisplayInsetsController.OnInsetsChangedListener() {
                    @Override
                    public void insetsChanged(InsetsState insetsState) {
                        int oldMaxMovementBound = mPipBoundsState.getMovementBounds().bottom;
                        onDisplayChanged(
                                mDisplayController.getDisplayLayout(mPipBoundsState.getDisplayId()),
                                false /* saveRestoreSnapFraction */);
                        int newMaxMovementBound = mPipBoundsState.getMovementBounds().bottom;
                        if (!mEnablePipKeepClearAlgorithm) {
                            int pipTop = mPipBoundsState.getBounds().top;
                            int diff = newMaxMovementBound - oldMaxMovementBound;
                            if (diff < 0 && pipTop > newMaxMovementBound) {
                                // bottom inset has increased, move PiP up if it is too low
                                mPipMotionHelper.animateToOffset(mPipBoundsState.getBounds(),
                                        newMaxMovementBound - pipTop);
                            }
                            if (diff > 0 && oldMaxMovementBound == pipTop) {
                                // bottom inset has decreased, move PiP down if it was by the edge
                                mPipMotionHelper.animateToOffset(mPipBoundsState.getBounds(), diff);
                            }
                        }
                    }
                });