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

Commit 8e0bb9a1 authored by Winson Chung's avatar Winson Chung
Browse files

Skip entering PIP when dismissing auto-enter pip task

- Revert some changes from ag/14827090, we don't actually need to
  screenshot when dismissing, but we do need to prevent pip

Bug: 190751761
Test: Swiping up from YT -> PIP
      Swiping up from YT to Overview to home -> PIP
      Swiping up from YT to Overview
Change-Id: I2057467d5146be6edc382d3745a1e5269cd76a6b
parent 274da5da
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -353,7 +353,8 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> {
    public void startHome() {
    public void startHome() {
        if (LIVE_TILE.get()) {
        if (LIVE_TILE.get()) {
            RecentsView recentsView = getOverviewPanel();
            RecentsView recentsView = getOverviewPanel();
            recentsView.switchToScreenshotAndFinishAnimationToRecents(this::startHomeInternal);
            recentsView.switchToScreenshot(() -> recentsView.finishRecentsAnimation(true,
                    this::startHomeInternal));
        } else {
        } else {
            startHomeInternal();
            startHomeInternal();
        }
        }
+8 −8
Original line number Original line Diff line number Diff line
@@ -2409,7 +2409,8 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
            public void accept(Boolean success) {
            public void accept(Boolean success) {
                if (LIVE_TILE.get() && mEnableDrawingLiveTile && dismissedTaskView.isRunningTask()
                if (LIVE_TILE.get() && mEnableDrawingLiveTile && dismissedTaskView.isRunningTask()
                        && success) {
                        && success) {
                    finishRecentsAnimation(true /* toHome */, () -> onEnd(success));
                    finishRecentsAnimation(true /* toRecents */, false /* shouldPip */,
                            () -> onEnd(success));
                } else {
                } else {
                    onEnd(success);
                    onEnd(success);
                }
                }
@@ -2420,7 +2421,8 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
                if (success) {
                if (success) {
                    if (shouldRemoveTask) {
                    if (shouldRemoveTask) {
                        if (dismissedTaskView.getTask() != null) {
                        if (dismissedTaskView.getTask() != null) {
                            switchToScreenshotAndFinishAnimationToRecents(() -> {
                            finishRecentsAnimation(true /* toRecents */, false /* shouldPip */,
                                    () -> {
                                UI_HELPER_EXECUTOR.getHandler().postDelayed(() ->
                                UI_HELPER_EXECUTOR.getHandler().postDelayed(() ->
                                        ActivityManagerWrapper.getInstance().removeTask(
                                        ActivityManagerWrapper.getInstance().removeTask(
                                                dismissedTaskId), REMOVE_TASK_WAIT_FOR_APP_STOP_MS);
                                                dismissedTaskId), REMOVE_TASK_WAIT_FOR_APP_STOP_MS);
@@ -2530,7 +2532,7 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
        mPendingAnimation.addEndListener(isSuccess -> {
        mPendingAnimation.addEndListener(isSuccess -> {
            if (isSuccess) {
            if (isSuccess) {
                // Remove all the task views now
                // Remove all the task views now
                switchToScreenshotAndFinishAnimationToRecents(() -> {
                finishRecentsAnimation(true /* toRecents */, false /* shouldPip */, () -> {
                    UI_HELPER_EXECUTOR.getHandler().postDelayed(
                    UI_HELPER_EXECUTOR.getHandler().postDelayed(
                            ActivityManagerWrapper.getInstance()::removeAllRecentTasks,
                            ActivityManagerWrapper.getInstance()::removeAllRecentTasks,
                            REMOVE_TASK_WAIT_FOR_APP_STOP_MS);
                            REMOVE_TASK_WAIT_FOR_APP_STOP_MS);
@@ -2691,7 +2693,9 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
    protected void onConfigurationChanged(Configuration newConfig) {
    protected void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        super.onConfigurationChanged(newConfig);
        if (LIVE_TILE.get() && mEnableDrawingLiveTile && newConfig.orientation != mOrientation) {
        if (LIVE_TILE.get() && mEnableDrawingLiveTile && newConfig.orientation != mOrientation) {
            switchToScreenshotAndFinishAnimationToRecents(this::updateRecentsRotation);
            switchToScreenshot(
                    () -> finishRecentsAnimation(true /* toRecents */, false /* showPip */,
                            this::updateRecentsRotation));
            mEnableDrawingLiveTile = false;
            mEnableDrawingLiveTile = false;
        } else {
        } else {
            updateRecentsRotation();
            updateRecentsRotation();
@@ -3701,10 +3705,6 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
        }
        }
    }
    }


    public void switchToScreenshotAndFinishAnimationToRecents(Runnable onFinishRunnable) {
        switchToScreenshot(() -> finishRecentsAnimation(true /* toRecents */, onFinishRunnable));
    }

    /**
    /**
     * Switch the current running task view to static snapshot mode,
     * Switch the current running task view to static snapshot mode,
     * capturing the snapshot at the same time.
     * capturing the snapshot at the same time.