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

Commit cfcb3663 authored by Ikram Gabiyev's avatar Ikram Gabiyev Committed by Android (Google) Code Review
Browse files

Merge "Make mCurrentPipTaskToken null when app crashes" into udc-qpr-dev

parents aa278351 755d0c3d
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -1927,6 +1927,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
        pw.println(innerPrefix + "mLeash=" + mLeash);
        pw.println(innerPrefix + "mLeash=" + mLeash);
        pw.println(innerPrefix + "mState=" + mPipTransitionState.getTransitionState());
        pw.println(innerPrefix + "mState=" + mPipTransitionState.getTransitionState());
        pw.println(innerPrefix + "mPictureInPictureParams=" + mPictureInPictureParams);
        pw.println(innerPrefix + "mPictureInPictureParams=" + mPictureInPictureParams);
        mPipTransitionController.dump(pw, innerPrefix);
    }
    }


    @Override
    @Override
+12 −0
Original line number Original line Diff line number Diff line
@@ -72,6 +72,7 @@ import com.android.wm.shell.transition.CounterRotatorHelper;
import com.android.wm.shell.transition.Transitions;
import com.android.wm.shell.transition.Transitions;
import com.android.wm.shell.util.TransitionUtil;
import com.android.wm.shell.util.TransitionUtil;


import java.io.PrintWriter;
import java.util.Optional;
import java.util.Optional;


/**
/**
@@ -451,6 +452,9 @@ public class PipTransition extends PipTransitionController {


    @Override
    @Override
    public void forceFinishTransition() {
    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;
        if (mFinishCallback == null) return;
        mFinishCallback.onTransitionFinished(null /* wct */, null /* callback */);
        mFinishCallback.onTransitionFinished(null /* wct */, null /* callback */);
        mFinishCallback = null;
        mFinishCallback = null;
@@ -1137,4 +1141,12 @@ public class PipTransition extends PipTransitionController {
                PipMenuController.ALPHA_NO_CHANGE);
                PipMenuController.ALPHA_NO_CHANGE);
        mPipMenuController.updateMenuBounds(destinationBounds);
        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);
    }
}
}
+6 −0
Original line number Original line Diff line number Diff line
@@ -42,6 +42,7 @@ import com.android.wm.shell.common.split.SplitScreenUtils;
import com.android.wm.shell.sysui.ShellInit;
import com.android.wm.shell.sysui.ShellInit;
import com.android.wm.shell.transition.Transitions;
import com.android.wm.shell.transition.Transitions;


import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.List;
import java.util.List;


@@ -283,4 +284,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH
         */
         */
        void onPipTransitionCanceled(int direction);
        void onPipTransitionCanceled(int direction);
    }
    }

    /**
     * Dumps internal states.
     */
    public void dump(PrintWriter pw, String prefix) {}
}
}