Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +29 −23 Original line number Diff line number Diff line Loading @@ -1785,7 +1785,6 @@ public class KeyguardViewMediator extends SystemUI { public void run() { Trace.beginSection("KeyguardViewMediator.mKeyGuardGoingAwayRunnable"); if (DEBUG) Log.d(TAG, "keyguardGoingAway"); try { mStatusBarKeyguardViewManager.keyguardGoingAway(); int flags = 0; Loading @@ -1803,13 +1802,20 @@ public class KeyguardViewMediator extends SystemUI { } mUpdateMonitor.setKeyguardGoingAway(true /* goingAway */); // Don't actually hide the Keyguard at the moment, wait for window // manager until it tells us it's safe to do so with // startKeyguardExitAnimation. ActivityTaskManager.getService().keyguardGoingAway(flags); // Posting to mUiOffloadThread to ensure that calls to ActivityTaskManager will be in // order. final int keyguardFlag = flags; mUiOffloadThread.submit(() -> { try { ActivityTaskManager.getService().keyguardGoingAway(keyguardFlag); } catch (RemoteException e) { Log.e(TAG, "Error while calling WindowManager", e); } }); Trace.endSection(); } }; Loading services/core/java/com/android/server/wm/KeyguardController.java +14 −8 Original line number Diff line number Diff line Loading @@ -133,27 +133,33 @@ class KeyguardController { * Update the Keyguard showing state. */ void setKeyguardShown(boolean keyguardShowing, boolean aodShowing) { boolean showingChanged = keyguardShowing != mKeyguardShowing || aodShowing != mAodShowing; // If keyguard is going away, but SystemUI aborted the transition, need to reset state. showingChanged |= mKeyguardGoingAway && keyguardShowing; if (!showingChanged) { final boolean keyguardChanged = keyguardShowing != mKeyguardShowing || mKeyguardGoingAway && keyguardShowing; final boolean aodChanged = aodShowing != mAodShowing; if (!keyguardChanged && !aodChanged) { return; } mKeyguardShowing = keyguardShowing; mAodShowing = aodShowing; mWindowManager.setAodShowing(aodShowing); if (showingChanged) { if (keyguardChanged) { // Irrelevant to AOD. dismissDockedStackIfNeeded(); setKeyguardGoingAway(false); // TODO(b/113840485): Check usage for non-default display mWindowManager.setKeyguardOrAodShowingOnDefaultDisplay( isKeyguardOrAodShowing(DEFAULT_DISPLAY)); if (keyguardShowing) { mDismissalRequested = false; } } mRootActivityContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); // TODO(b/113840485): Check usage for non-default display mWindowManager.setKeyguardOrAodShowingOnDefaultDisplay( isKeyguardOrAodShowing(DEFAULT_DISPLAY)); // Update the sleep token first such that ensureActivitiesVisible has correct sleep token // state when evaluating visibilities. updateKeyguardSleepToken(); mRootActivityContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); } /** Loading Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +29 −23 Original line number Diff line number Diff line Loading @@ -1785,7 +1785,6 @@ public class KeyguardViewMediator extends SystemUI { public void run() { Trace.beginSection("KeyguardViewMediator.mKeyGuardGoingAwayRunnable"); if (DEBUG) Log.d(TAG, "keyguardGoingAway"); try { mStatusBarKeyguardViewManager.keyguardGoingAway(); int flags = 0; Loading @@ -1803,13 +1802,20 @@ public class KeyguardViewMediator extends SystemUI { } mUpdateMonitor.setKeyguardGoingAway(true /* goingAway */); // Don't actually hide the Keyguard at the moment, wait for window // manager until it tells us it's safe to do so with // startKeyguardExitAnimation. ActivityTaskManager.getService().keyguardGoingAway(flags); // Posting to mUiOffloadThread to ensure that calls to ActivityTaskManager will be in // order. final int keyguardFlag = flags; mUiOffloadThread.submit(() -> { try { ActivityTaskManager.getService().keyguardGoingAway(keyguardFlag); } catch (RemoteException e) { Log.e(TAG, "Error while calling WindowManager", e); } }); Trace.endSection(); } }; Loading
services/core/java/com/android/server/wm/KeyguardController.java +14 −8 Original line number Diff line number Diff line Loading @@ -133,27 +133,33 @@ class KeyguardController { * Update the Keyguard showing state. */ void setKeyguardShown(boolean keyguardShowing, boolean aodShowing) { boolean showingChanged = keyguardShowing != mKeyguardShowing || aodShowing != mAodShowing; // If keyguard is going away, but SystemUI aborted the transition, need to reset state. showingChanged |= mKeyguardGoingAway && keyguardShowing; if (!showingChanged) { final boolean keyguardChanged = keyguardShowing != mKeyguardShowing || mKeyguardGoingAway && keyguardShowing; final boolean aodChanged = aodShowing != mAodShowing; if (!keyguardChanged && !aodChanged) { return; } mKeyguardShowing = keyguardShowing; mAodShowing = aodShowing; mWindowManager.setAodShowing(aodShowing); if (showingChanged) { if (keyguardChanged) { // Irrelevant to AOD. dismissDockedStackIfNeeded(); setKeyguardGoingAway(false); // TODO(b/113840485): Check usage for non-default display mWindowManager.setKeyguardOrAodShowingOnDefaultDisplay( isKeyguardOrAodShowing(DEFAULT_DISPLAY)); if (keyguardShowing) { mDismissalRequested = false; } } mRootActivityContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); // TODO(b/113840485): Check usage for non-default display mWindowManager.setKeyguardOrAodShowingOnDefaultDisplay( isKeyguardOrAodShowing(DEFAULT_DISPLAY)); // Update the sleep token first such that ensureActivitiesVisible has correct sleep token // state when evaluating visibilities. updateKeyguardSleepToken(); mRootActivityContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); } /** Loading