Merge "Fix rare edge-cases pip crashes" into tm-qpr-dev

This commit is contained in:
Evan Rosky
2023-01-11 01:42:23 +00:00
committed by Android (Google) Code Review
2 changed files with 8 additions and 2 deletions

View File

@@ -662,8 +662,8 @@ public class PipTransition extends PipTransitionController {
} }
// Please file a bug to handle the unexpected transition type. // Please file a bug to handle the unexpected transition type.
throw new IllegalStateException("Entering PIP with unexpected transition type=" android.util.Slog.e(TAG, "Found new PIP in transition with mis-matched type="
+ transitTypeToString(transitType)); + transitTypeToString(transitType), new Throwable());
} }
return false; return false;
} }

View File

@@ -333,6 +333,9 @@ public class PhonePipMenuController implements PipMenuController {
mTmpDestinationRectF.set(destinationBounds); mTmpDestinationRectF.set(destinationBounds);
mMoveTransform.setRectToRect(mTmpSourceRectF, mTmpDestinationRectF, Matrix.ScaleToFit.FILL); mMoveTransform.setRectToRect(mTmpSourceRectF, mTmpDestinationRectF, Matrix.ScaleToFit.FILL);
final SurfaceControl surfaceControl = getSurfaceControl(); final SurfaceControl surfaceControl = getSurfaceControl();
if (surfaceControl == null) {
return;
}
final SurfaceControl.Transaction menuTx = final SurfaceControl.Transaction menuTx =
mSurfaceControlTransactionFactory.getTransaction(); mSurfaceControlTransactionFactory.getTransaction();
menuTx.setMatrix(surfaceControl, mMoveTransform, mTmpTransform); menuTx.setMatrix(surfaceControl, mMoveTransform, mTmpTransform);
@@ -359,6 +362,9 @@ public class PhonePipMenuController implements PipMenuController {
} }
final SurfaceControl surfaceControl = getSurfaceControl(); final SurfaceControl surfaceControl = getSurfaceControl();
if (surfaceControl == null) {
return;
}
final SurfaceControl.Transaction menuTx = final SurfaceControl.Transaction menuTx =
mSurfaceControlTransactionFactory.getTransaction(); mSurfaceControlTransactionFactory.getTransaction();
menuTx.setCrop(surfaceControl, destinationBounds); menuTx.setCrop(surfaceControl, destinationBounds);