Loading services/core/java/com/android/server/wm/ActivityRecord.java +1 −1 Original line number Diff line number Diff line Loading @@ -1439,7 +1439,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } boolean scheduleTopResumedActivityChanged(boolean onTop) { if (!attachedToProcess()) { if (!attachedToProcess() || isState(DESTROYING, DESTROYED)) { ProtoLog.w(WM_DEBUG_STATES, "Can't report activity position update - client not running, " + "activityRecord=%s", this); Loading services/core/java/com/android/server/wm/ActivityTaskSupervisor.java +4 −1 Original line number Diff line number Diff line Loading @@ -2281,6 +2281,9 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { * sent to the new top resumed activity. */ ActivityRecord updateTopResumedActivityIfNeeded(String reason) { if (!readyToResume()) { return mTopResumedActivity; } final ActivityRecord prevTopActivity = mTopResumedActivity; final Task topRootTask = mRootWindowContainer.getTopDisplayFocusedRootTask(); if (topRootTask == null || topRootTask.getTopResumedActivity() == prevTopActivity) { Loading Loading @@ -2341,8 +2344,8 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { && mTopResumedActivity.scheduleTopResumedActivityChanged(false /* onTop */)) { scheduleTopResumedStateLossTimeout(mTopResumedActivity); mTopResumedActivityWaitingForPrev = true; mTopResumedActivity = null; } mTopResumedActivity = null; } /** Schedule top resumed state change if previous top activity already reported back. */ Loading services/tests/wmtests/src/com/android/server/wm/ActivityTaskManagerServiceTests.java +0 −2 Original line number Diff line number Diff line Loading @@ -382,13 +382,11 @@ public class ActivityTaskManagerServiceTests extends WindowTestsBase { @Test public void testResumeNextActivityOnCrashedAppDied() { mSupervisor.beginDeferResume(); final ActivityRecord homeActivity = new ActivityBuilder(mAtm) .setTask(mRootWindowContainer.getDefaultTaskDisplayArea().getOrCreateRootHomeTask()) .build(); final ActivityRecord activity = new ActivityBuilder(mAtm).setCreateTask(true).build(); activity.setState(RESUMED, "test"); mSupervisor.endDeferResume(); assertEquals(activity.app, mAtm.mInternal.getTopApp()); Loading Loading
services/core/java/com/android/server/wm/ActivityRecord.java +1 −1 Original line number Diff line number Diff line Loading @@ -1439,7 +1439,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } boolean scheduleTopResumedActivityChanged(boolean onTop) { if (!attachedToProcess()) { if (!attachedToProcess() || isState(DESTROYING, DESTROYED)) { ProtoLog.w(WM_DEBUG_STATES, "Can't report activity position update - client not running, " + "activityRecord=%s", this); Loading
services/core/java/com/android/server/wm/ActivityTaskSupervisor.java +4 −1 Original line number Diff line number Diff line Loading @@ -2281,6 +2281,9 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { * sent to the new top resumed activity. */ ActivityRecord updateTopResumedActivityIfNeeded(String reason) { if (!readyToResume()) { return mTopResumedActivity; } final ActivityRecord prevTopActivity = mTopResumedActivity; final Task topRootTask = mRootWindowContainer.getTopDisplayFocusedRootTask(); if (topRootTask == null || topRootTask.getTopResumedActivity() == prevTopActivity) { Loading Loading @@ -2341,8 +2344,8 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks { && mTopResumedActivity.scheduleTopResumedActivityChanged(false /* onTop */)) { scheduleTopResumedStateLossTimeout(mTopResumedActivity); mTopResumedActivityWaitingForPrev = true; mTopResumedActivity = null; } mTopResumedActivity = null; } /** Schedule top resumed state change if previous top activity already reported back. */ Loading
services/tests/wmtests/src/com/android/server/wm/ActivityTaskManagerServiceTests.java +0 −2 Original line number Diff line number Diff line Loading @@ -382,13 +382,11 @@ public class ActivityTaskManagerServiceTests extends WindowTestsBase { @Test public void testResumeNextActivityOnCrashedAppDied() { mSupervisor.beginDeferResume(); final ActivityRecord homeActivity = new ActivityBuilder(mAtm) .setTask(mRootWindowContainer.getDefaultTaskDisplayArea().getOrCreateRootHomeTask()) .build(); final ActivityRecord activity = new ActivityBuilder(mAtm).setCreateTask(true).build(); activity.setState(RESUMED, "test"); mSupervisor.endDeferResume(); assertEquals(activity.app, mAtm.mInternal.getTopApp()); Loading