Loading services/core/java/com/android/server/am/ActivityManagerService.java +14 −0 Original line number Diff line number Diff line Loading @@ -602,6 +602,8 @@ public final class ActivityManagerService extends ActivityManagerNative final AppErrors mAppErrors; boolean mDoingSetFocusedActivity; public boolean canShowErrorDialogs() { return mShowDialogs && !mSleeping && !mShuttingDown; } Loading Loading @@ -2732,6 +2734,12 @@ public final class ActivityManagerService extends ActivityManagerNative } if (DEBUG_FOCUS) Slog.d(TAG_FOCUS, "setFocusedActivityLocked: r=" + r); final boolean wasDoingSetFocusedActivity = mDoingSetFocusedActivity; if (wasDoingSetFocusedActivity) Slog.w(TAG, "setFocusedActivityLocked: called recursively, r=" + r + ", reason=" + reason); mDoingSetFocusedActivity = true; final ActivityRecord last = mFocusedActivity; mFocusedActivity = r; if (r.task.isApplicationTask()) { Loading Loading @@ -2783,6 +2791,12 @@ public final class ActivityManagerService extends ActivityManagerNative mLastFocusedUserId = mFocusedActivity.userId; } // Log a warning if the focused app is changed during the process. This could // indicate a problem of the focus setting logic! if (mFocusedActivity != r) Slog.w(TAG, "setFocusedActivityLocked: r=" + r + " but focused to " + mFocusedActivity); mDoingSetFocusedActivity = wasDoingSetFocusedActivity; EventLogTags.writeAmFocusedActivity( mFocusedActivity == null ? -1 : mFocusedActivity.userId, mFocusedActivity == null ? "NULL" : mFocusedActivity.shortComponentName, Loading services/core/java/com/android/server/am/ActivityStackSupervisor.java +1 −1 Original line number Diff line number Diff line Loading @@ -583,7 +583,7 @@ public final class ActivityStackSupervisor implements DisplayListener { } final ActivityRecord r = topRunningActivityLocked(); if (mService.mFocusedActivity != r) { if (!mService.mDoingSetFocusedActivity && mService.mFocusedActivity != r) { // The focus activity should always be the top activity in the focused stack. // There will be chaos and anarchy if it isn't... mService.setFocusedActivityLocked(r, reason + " setFocusStack"); Loading Loading
services/core/java/com/android/server/am/ActivityManagerService.java +14 −0 Original line number Diff line number Diff line Loading @@ -602,6 +602,8 @@ public final class ActivityManagerService extends ActivityManagerNative final AppErrors mAppErrors; boolean mDoingSetFocusedActivity; public boolean canShowErrorDialogs() { return mShowDialogs && !mSleeping && !mShuttingDown; } Loading Loading @@ -2732,6 +2734,12 @@ public final class ActivityManagerService extends ActivityManagerNative } if (DEBUG_FOCUS) Slog.d(TAG_FOCUS, "setFocusedActivityLocked: r=" + r); final boolean wasDoingSetFocusedActivity = mDoingSetFocusedActivity; if (wasDoingSetFocusedActivity) Slog.w(TAG, "setFocusedActivityLocked: called recursively, r=" + r + ", reason=" + reason); mDoingSetFocusedActivity = true; final ActivityRecord last = mFocusedActivity; mFocusedActivity = r; if (r.task.isApplicationTask()) { Loading Loading @@ -2783,6 +2791,12 @@ public final class ActivityManagerService extends ActivityManagerNative mLastFocusedUserId = mFocusedActivity.userId; } // Log a warning if the focused app is changed during the process. This could // indicate a problem of the focus setting logic! if (mFocusedActivity != r) Slog.w(TAG, "setFocusedActivityLocked: r=" + r + " but focused to " + mFocusedActivity); mDoingSetFocusedActivity = wasDoingSetFocusedActivity; EventLogTags.writeAmFocusedActivity( mFocusedActivity == null ? -1 : mFocusedActivity.userId, mFocusedActivity == null ? "NULL" : mFocusedActivity.shortComponentName, Loading
services/core/java/com/android/server/am/ActivityStackSupervisor.java +1 −1 Original line number Diff line number Diff line Loading @@ -583,7 +583,7 @@ public final class ActivityStackSupervisor implements DisplayListener { } final ActivityRecord r = topRunningActivityLocked(); if (mService.mFocusedActivity != r) { if (!mService.mDoingSetFocusedActivity && mService.mFocusedActivity != r) { // The focus activity should always be the top activity in the focused stack. // There will be chaos and anarchy if it isn't... mService.setFocusedActivityLocked(r, reason + " setFocusStack"); Loading