Check resumed state of activity before skipping resuming
The activity may be paused state for pre-Q apps with 2 activities on different display. When touching the display to switch focus, it relied on setFoucusedTask to be resumed. Bug: 275508603 Test: MultiDisplayPolicyTests#testPreQTopProcessResumedDisplayMoved Change-Id: Ic84aaa5f4cdaa818805452333b69052760ffd2a8
This commit is contained in:
@@ -100,6 +100,7 @@ import static com.android.server.wm.ActivityInterceptorCallback.MAINLINE_LAST_OR
|
||||
import static com.android.server.wm.ActivityInterceptorCallback.SYSTEM_FIRST_ORDERED_ID;
|
||||
import static com.android.server.wm.ActivityInterceptorCallback.SYSTEM_LAST_ORDERED_ID;
|
||||
import static com.android.server.wm.ActivityRecord.State.PAUSING;
|
||||
import static com.android.server.wm.ActivityRecord.State.RESUMED;
|
||||
import static com.android.server.wm.ActivityTaskManagerDebugConfig.DEBUG_ALL;
|
||||
import static com.android.server.wm.ActivityTaskManagerDebugConfig.POSTFIX_ROOT_TASK;
|
||||
import static com.android.server.wm.ActivityTaskManagerDebugConfig.POSTFIX_SWITCH;
|
||||
@@ -2011,7 +2012,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
return;
|
||||
}
|
||||
|
||||
if (r == mRootWindowContainer.getTopResumedActivity()) {
|
||||
if (r.isState(RESUMED) && r == mRootWindowContainer.getTopResumedActivity()) {
|
||||
setLastResumedActivityUncheckLocked(r, "setFocusedTask-alreadyTop");
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user