Loading services/core/java/com/android/server/am/ActivityStackSupervisor.java +5 −2 Original line number Diff line number Diff line Loading @@ -4699,11 +4699,14 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D // Work Challenge is present) let startActivityInPackage handle the intercepting. if (!mService.mUserController.shouldConfirmCredentials(task.userId) && task.getRootActivity() != null) { mService.mActivityStarter.sendPowerHintForLaunchStartIfNeeded(true /* forceSend */); final ActivityRecord targetActivity = task.getTopActivity(); mService.mActivityStarter.sendPowerHintForLaunchStartIfNeeded(true /* forceSend */, targetActivity); mActivityMetricsLogger.notifyActivityLaunching(); mService.moveTaskToFrontLocked(task.taskId, 0, bOptions, true /* fromRecents */); mActivityMetricsLogger.notifyActivityLaunched(ActivityManager.START_TASK_TO_FRONT, task.getTopActivity()); targetActivity); // If we are launching the task in the docked stack, put it into resizing mode so // the window renders full-screen with the background filling the void. Also only Loading services/core/java/com/android/server/am/ActivityStarter.java +7 −5 Original line number Diff line number Diff line Loading @@ -951,7 +951,7 @@ class ActivityStarter { return START_SUCCESS; } void sendPowerHintForLaunchStartIfNeeded(boolean forceSend) { void sendPowerHintForLaunchStartIfNeeded(boolean forceSend, ActivityRecord targetActivity) { boolean sendHint = forceSend; if (!sendHint) { Loading @@ -960,7 +960,7 @@ class ActivityStarter { final ActivityRecord resumedActivity = mSupervisor.getResumedActivityLocked(); sendHint = resumedActivity == null || resumedActivity.app == null || !resumedActivity.app.equals(mStartActivity.app); || !resumedActivity.app.equals(targetActivity.app); } if (sendHint && mService.mLocalPowerManager != null) { Loading Loading @@ -1080,7 +1080,7 @@ class ActivityStarter { } } sendPowerHintForLaunchStartIfNeeded(false /* forceSend */); sendPowerHintForLaunchStartIfNeeded(false /* forceSend */, reusedActivity); reusedActivity = setTargetStackAndMoveToFrontIfNeeded(reusedActivity); Loading Loading @@ -1109,6 +1109,7 @@ class ActivityStarter { if (outActivity != null && outActivity.length > 0) { outActivity[0] = reusedActivity; } return START_TASK_TO_FRONT; } } Loading Loading @@ -1200,7 +1201,7 @@ class ActivityStarter { EventLogTags.AM_CREATE_ACTIVITY, mStartActivity, mStartActivity.getTask()); mTargetStack.mLastPausedActivity = null; sendPowerHintForLaunchStartIfNeeded(false /* forceSend */); sendPowerHintForLaunchStartIfNeeded(false /* forceSend */, mStartActivity); mTargetStack.startActivityLocked(mStartActivity, topFocused, newTask, mKeepCurTransition, mOptions); Loading Loading @@ -1502,7 +1503,8 @@ class ActivityStarter { if (mLaunchSingleInstance) { // There can be one and only one instance of single instance activity in the // history, and it is always in its own unique task, so we do a special search. intentActivity = mSupervisor.findActivityLocked(mIntent, mStartActivity.info, false); intentActivity = mSupervisor.findActivityLocked(mIntent, mStartActivity.info, mStartActivity.isHomeActivity()); } else if ((mLaunchFlags & FLAG_ACTIVITY_LAUNCH_ADJACENT) != 0) { // For the launch adjacent case we only want to put the activity in an existing // task if the activity already exists in the history. Loading Loading
services/core/java/com/android/server/am/ActivityStackSupervisor.java +5 −2 Original line number Diff line number Diff line Loading @@ -4699,11 +4699,14 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D // Work Challenge is present) let startActivityInPackage handle the intercepting. if (!mService.mUserController.shouldConfirmCredentials(task.userId) && task.getRootActivity() != null) { mService.mActivityStarter.sendPowerHintForLaunchStartIfNeeded(true /* forceSend */); final ActivityRecord targetActivity = task.getTopActivity(); mService.mActivityStarter.sendPowerHintForLaunchStartIfNeeded(true /* forceSend */, targetActivity); mActivityMetricsLogger.notifyActivityLaunching(); mService.moveTaskToFrontLocked(task.taskId, 0, bOptions, true /* fromRecents */); mActivityMetricsLogger.notifyActivityLaunched(ActivityManager.START_TASK_TO_FRONT, task.getTopActivity()); targetActivity); // If we are launching the task in the docked stack, put it into resizing mode so // the window renders full-screen with the background filling the void. Also only Loading
services/core/java/com/android/server/am/ActivityStarter.java +7 −5 Original line number Diff line number Diff line Loading @@ -951,7 +951,7 @@ class ActivityStarter { return START_SUCCESS; } void sendPowerHintForLaunchStartIfNeeded(boolean forceSend) { void sendPowerHintForLaunchStartIfNeeded(boolean forceSend, ActivityRecord targetActivity) { boolean sendHint = forceSend; if (!sendHint) { Loading @@ -960,7 +960,7 @@ class ActivityStarter { final ActivityRecord resumedActivity = mSupervisor.getResumedActivityLocked(); sendHint = resumedActivity == null || resumedActivity.app == null || !resumedActivity.app.equals(mStartActivity.app); || !resumedActivity.app.equals(targetActivity.app); } if (sendHint && mService.mLocalPowerManager != null) { Loading Loading @@ -1080,7 +1080,7 @@ class ActivityStarter { } } sendPowerHintForLaunchStartIfNeeded(false /* forceSend */); sendPowerHintForLaunchStartIfNeeded(false /* forceSend */, reusedActivity); reusedActivity = setTargetStackAndMoveToFrontIfNeeded(reusedActivity); Loading Loading @@ -1109,6 +1109,7 @@ class ActivityStarter { if (outActivity != null && outActivity.length > 0) { outActivity[0] = reusedActivity; } return START_TASK_TO_FRONT; } } Loading Loading @@ -1200,7 +1201,7 @@ class ActivityStarter { EventLogTags.AM_CREATE_ACTIVITY, mStartActivity, mStartActivity.getTask()); mTargetStack.mLastPausedActivity = null; sendPowerHintForLaunchStartIfNeeded(false /* forceSend */); sendPowerHintForLaunchStartIfNeeded(false /* forceSend */, mStartActivity); mTargetStack.startActivityLocked(mStartActivity, topFocused, newTask, mKeepCurTransition, mOptions); Loading Loading @@ -1502,7 +1503,8 @@ class ActivityStarter { if (mLaunchSingleInstance) { // There can be one and only one instance of single instance activity in the // history, and it is always in its own unique task, so we do a special search. intentActivity = mSupervisor.findActivityLocked(mIntent, mStartActivity.info, false); intentActivity = mSupervisor.findActivityLocked(mIntent, mStartActivity.info, mStartActivity.isHomeActivity()); } else if ((mLaunchFlags & FLAG_ACTIVITY_LAUNCH_ADJACENT) != 0) { // For the launch adjacent case we only want to put the activity in an existing // task if the activity already exists in the history. Loading