Merge "Resume when keyguard start going away"

This commit is contained in:
Andrii Kulian
2018-02-22 22:15:36 +00:00
committed by Android (Google) Code Review
3 changed files with 16 additions and 9 deletions

View File

@@ -25731,7 +25731,6 @@ public class ActivityManagerService extends IActivityManager.Stub
public void notifyAppTransitionFinished() {
synchronized (ActivityManagerService.this) {
mStackSupervisor.notifyAppTransitionDone();
mKeyguardController.notifyAppTransitionDone();
}
}

View File

@@ -1625,6 +1625,20 @@ final class ActivityRecord extends ConfigurationContainer implements AppWindowCo
// The activity may be waiting for stop, but that is no longer appropriate for it.
mStackSupervisor.mStoppingActivities.remove(this);
mStackSupervisor.mGoingToSleepActivities.remove(this);
// If the activity is stopped or stopping, cycle to the paused state.
if (state == STOPPED || state == STOPPING) {
// Capture reason before state change
final String reason = getLifecycleDescription("makeVisibleIfNeeded");
// An activity must be in the {@link PAUSING} state for the system to validate
// the move to {@link PAUSED}.
state = PAUSING;
service.mLifecycleManager.scheduleTransaction(app.thread, appToken,
PauseActivityItem.obtain(finishing, false /* userLeaving */,
configChangeFlags, false /* dontReport */)
.setDescription(reason));
}
} catch (Exception e) {
// Just skip on any failure; we'll make it visible when it next restarts.
Slog.w(TAG, "Exception thrown making visibile: " + intent.getComponent(), e);

View File

@@ -117,14 +117,11 @@ class KeyguardController {
mSecondaryDisplayShowing = secondaryDisplayShowing;
if (showingChanged) {
dismissDockedStackIfNeeded();
setKeyguardGoingAway(false);
if (showing) {
setKeyguardGoingAway(false);
mDismissalRequested = false;
}
}
if (!showing) {
mStackSupervisor.resumeFocusedStackTopActivityLocked();
}
mStackSupervisor.ensureActivitiesVisibleLocked(null, 0, !PRESERVE_WINDOWS);
updateKeyguardSleepToken();
}
@@ -149,6 +146,7 @@ class KeyguardController {
updateKeyguardSleepToken();
// Some stack visibility might change (e.g. docked stack)
mStackSupervisor.resumeFocusedStackTopActivityLocked();
mStackSupervisor.ensureActivitiesVisibleLocked(null, 0, !PRESERVE_WINDOWS);
mStackSupervisor.addStartingWindowsForVisibleActivities(true /* taskSwitch */);
mWindowManager.executeAppTransition();
@@ -395,8 +393,4 @@ class KeyguardController {
proto.write(KEYGUARD_OCCLUDED, mOccluded);
proto.end(token);
}
public void notifyAppTransitionDone() {
setKeyguardGoingAway(false);
}
}