Merge "Make mCurrentPipTaskToken null when app crashes" into udc-dev am: 2a2a1b1266
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24044846 Change-Id: I248cd0ed6f1324fb77745133ffd401eb701714e6 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -1927,6 +1927,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
|
||||
pw.println(innerPrefix + "mLeash=" + mLeash);
|
||||
pw.println(innerPrefix + "mState=" + mPipTransitionState.getTransitionState());
|
||||
pw.println(innerPrefix + "mPictureInPictureParams=" + mPictureInPictureParams);
|
||||
mPipTransitionController.dump(pw, innerPrefix);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -72,6 +72,7 @@ import com.android.wm.shell.transition.CounterRotatorHelper;
|
||||
import com.android.wm.shell.transition.Transitions;
|
||||
import com.android.wm.shell.util.TransitionUtil;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
@@ -451,6 +452,9 @@ public class PipTransition extends PipTransitionController {
|
||||
|
||||
@Override
|
||||
public void forceFinishTransition() {
|
||||
// mFinishCallback might be null with an outdated mCurrentPipTaskToken
|
||||
// for example, when app crashes while in PiP and exit transition has not started
|
||||
mCurrentPipTaskToken = null;
|
||||
if (mFinishCallback == null) return;
|
||||
mFinishCallback.onTransitionFinished(null /* wct */, null /* callback */);
|
||||
mFinishCallback = null;
|
||||
@@ -1137,4 +1141,12 @@ public class PipTransition extends PipTransitionController {
|
||||
PipMenuController.ALPHA_NO_CHANGE);
|
||||
mPipMenuController.updateMenuBounds(destinationBounds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dump(PrintWriter pw, String prefix) {
|
||||
final String innerPrefix = prefix + " ";
|
||||
pw.println(prefix + TAG);
|
||||
pw.println(innerPrefix + "mCurrentPipTaskToken=" + mCurrentPipTaskToken);
|
||||
pw.println(innerPrefix + "mFinishCallback=" + mFinishCallback);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ import com.android.wm.shell.common.split.SplitScreenUtils;
|
||||
import com.android.wm.shell.sysui.ShellInit;
|
||||
import com.android.wm.shell.transition.Transitions;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -283,4 +284,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH
|
||||
*/
|
||||
void onPipTransitionCanceled(int direction);
|
||||
}
|
||||
|
||||
/**
|
||||
* Dumps internal states.
|
||||
*/
|
||||
public void dump(PrintWriter pw, String prefix) {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user