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

Commit cac5c322 authored by Wale Ogunwale's avatar Wale Ogunwale
Browse files

Only resuming starting dontWaitForPause activity once

For a starting activity that doesn't wait for pause, we can resume it
when ensuring visible activities when pausing back stacks. If this
happens, there is no need to try to resume it again.

Bug: 28853615
Change-Id: Iee40b80eb13ab3fd65fdce0c100c4051e64f229f
parent 8c09c7dd
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -2258,6 +2258,20 @@ final class ActivityStack {
            }
            if (DEBUG_STACK) mStackSupervisor.validateTopActivitiesLocked();
            return true;
        } else if (mResumedActivity == next && next.state == ActivityState.RESUMED &&
                mStackSupervisor.allResumedActivitiesComplete()) {
            // It is possible for the activity to be resumed when we paused back stacks above if the
            // next activity doesn't have to wait for pause to complete.
            // So, nothing else to-do except:
            // Make sure we have executed any pending transitions, since there
            // should be nothing left to do at this point.
            mWindowManager.executeAppTransition();
            mNoAnimActivities.clear();
            ActivityOptions.abort(options);
            if (DEBUG_STATES) Slog.d(TAG_STATES,
                    "resumeTopActivityLocked: Top activity resumed (dontWaitForPause) " + next);
            if (DEBUG_STACK) mStackSupervisor.validateTopActivitiesLocked();
            return true;
        }

        // If the most recent activity was noHistory but was only stopped rather