Skip to content
Snippets Groups Projects
Commit 4af5694e authored by Riddle Hsu's avatar Riddle Hsu Committed by Android (Google) Code Review
Browse files

Merge "Avoid invisible PiP handling input events" into udc-dev

parents b33119d3 7bdba320
No related branches found
No related tags found
No related merge requests found
......@@ -1079,10 +1079,28 @@ public class PipTransition extends PipTransitionController {
}
final float alphaStart = show ? 0 : 1;
final float alphaEnd = show ? 1 : 0;
final PipAnimationController.PipTransactionHandler transactionHandler =
new PipAnimationController.PipTransactionHandler() {
@Override
public boolean handlePipTransaction(SurfaceControl leash,
SurfaceControl.Transaction tx, Rect destinationBounds, float alpha) {
if (alpha == 0) {
if (show) {
tx.setPosition(leash, destinationBounds.left, destinationBounds.top);
} else {
// Put PiP out of the display so it won't block touch when it is hidden.
final Rect displayBounds = mPipDisplayLayoutState.getDisplayBounds();
final int max = Math.max(displayBounds.width(), displayBounds.height());
tx.setPosition(leash, max, max);
}
}
return false;
}
};
mPipAnimationController
.getAnimator(taskInfo, leash, mPipBoundsState.getBounds(), alphaStart, alphaEnd)
.setTransitionDirection(TRANSITION_DIRECTION_SAME)
.setPipAnimationCallback(mPipAnimationCallback)
.setPipTransactionHandler(transactionHandler)
.setDuration(mEnterExitAnimationDuration)
.start();
mHasFadeOut = !show;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment