Merge "Animate PiP away on inset changes." into tm-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
3aac107972
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user