Do remove starting windows for activities in an invisible stack

Depending on app launch timing it is possible for the initializing
activity that is the top of an invisible stack to still have its
starting window visible since we skip removing orphaned starting
window for the top activity in a stack. We now remove starting
windows for all activities in an invisible stack.

Bug: 28173906
Change-Id: Ie5284c9681d06969f647cbe46a77dd072ca61435
This commit is contained in:
Wale Ogunwale
2016-07-12 10:29:12 -07:00
parent 49c410bc48
commit 98742a5871

View File

@@ -2051,6 +2051,14 @@ final class ActivityStack {
// We don't want to clear starting window for activities that aren't behind fullscreen
// activities as we need to display their starting window until they are done initializing.
boolean behindFullscreenActivity = false;
if (getStackVisibilityLocked(null) == STACK_INVISIBLE) {
// The stack is not visible, so no activity in it should be displaying a starting
// window. Mark all activities below top and behind fullscreen.
aboveTop = false;
behindFullscreenActivity = true;
}
for (int taskNdx = mTaskHistory.size() - 1; taskNdx >= 0; --taskNdx) {
final ArrayList<ActivityRecord> activities = mTaskHistory.get(taskNdx).mActivities;
for (int activityNdx = activities.size() - 1; activityNdx >= 0; --activityNdx) {