Loading services/core/java/com/android/server/wm/ActivityRecord.java +3 −4 Original line number Original line Diff line number Diff line Loading @@ -1723,10 +1723,9 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A // The snapshot of home is only used once because it won't be updated while screen // The snapshot of home is only used once because it won't be updated while screen // is on (see {@link TaskSnapshotController#screenTurningOff}). // is on (see {@link TaskSnapshotController#screenTurningOff}). mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId); mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId); // TODO(b/9684093): Use more general condition to specify the case. if ((mDisplayContent.mAppTransition.getTransitFlags() if (mDisplayContent.mAppTransition & WindowManager.TRANSIT_FLAG_KEYGUARD_GOING_AWAY_NO_ANIMATION) == 0) { .getAppTransition() != WindowManager.TRANSIT_KEYGUARD_GOING_AWAY) { // Only use snapshot of home as starting window when unlocking directly. // Only use snapshot of home as starting window when unlocking. return false; return false; } } } } Loading services/core/java/com/android/server/wm/DisplayPolicy.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -1183,6 +1183,11 @@ public class DisplayPolicy { if (transit == TRANSIT_PREVIEW_DONE) { if (transit == TRANSIT_PREVIEW_DONE) { if (win.hasAppShownWindows()) { if (win.hasAppShownWindows()) { if (win.isActivityTypeHome()) { // Dismiss the starting window as soon as possible to avoid the crossfade out // with old content because home is easier to have different UI states. return ANIMATION_NONE; } if (DEBUG_ANIM) Slog.i(TAG, "**** STARTING EXIT"); if (DEBUG_ANIM) Slog.i(TAG, "**** STARTING EXIT"); return R.anim.app_starting_exit; return R.anim.app_starting_exit; } } Loading services/core/java/com/android/server/wm/TaskSnapshotController.java +4 −2 Original line number Original line Diff line number Diff line Loading @@ -559,8 +559,10 @@ class TaskSnapshotController { } } }); }); // Allow taking snapshot of home when turning screen off to reduce the delay of // Allow taking snapshot of home when turning screen off to reduce the delay of // unlocking/waking to home. // waking from secure lock to home. snapshotTasks(mTmpTasks, true /* allowSnapshotHome */); final boolean allowSnapshotHome = mService.mPolicy.isKeyguardSecure(mService.mCurrentUserId); snapshotTasks(mTmpTasks, allowSnapshotHome); } } } finally { } finally { listener.onScreenOff(); listener.onScreenOff(); Loading Loading
services/core/java/com/android/server/wm/ActivityRecord.java +3 −4 Original line number Original line Diff line number Diff line Loading @@ -1723,10 +1723,9 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A // The snapshot of home is only used once because it won't be updated while screen // The snapshot of home is only used once because it won't be updated while screen // is on (see {@link TaskSnapshotController#screenTurningOff}). // is on (see {@link TaskSnapshotController#screenTurningOff}). mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId); mWmService.mTaskSnapshotController.removeSnapshotCache(task.mTaskId); // TODO(b/9684093): Use more general condition to specify the case. if ((mDisplayContent.mAppTransition.getTransitFlags() if (mDisplayContent.mAppTransition & WindowManager.TRANSIT_FLAG_KEYGUARD_GOING_AWAY_NO_ANIMATION) == 0) { .getAppTransition() != WindowManager.TRANSIT_KEYGUARD_GOING_AWAY) { // Only use snapshot of home as starting window when unlocking directly. // Only use snapshot of home as starting window when unlocking. return false; return false; } } } } Loading
services/core/java/com/android/server/wm/DisplayPolicy.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -1183,6 +1183,11 @@ public class DisplayPolicy { if (transit == TRANSIT_PREVIEW_DONE) { if (transit == TRANSIT_PREVIEW_DONE) { if (win.hasAppShownWindows()) { if (win.hasAppShownWindows()) { if (win.isActivityTypeHome()) { // Dismiss the starting window as soon as possible to avoid the crossfade out // with old content because home is easier to have different UI states. return ANIMATION_NONE; } if (DEBUG_ANIM) Slog.i(TAG, "**** STARTING EXIT"); if (DEBUG_ANIM) Slog.i(TAG, "**** STARTING EXIT"); return R.anim.app_starting_exit; return R.anim.app_starting_exit; } } Loading
services/core/java/com/android/server/wm/TaskSnapshotController.java +4 −2 Original line number Original line Diff line number Diff line Loading @@ -559,8 +559,10 @@ class TaskSnapshotController { } } }); }); // Allow taking snapshot of home when turning screen off to reduce the delay of // Allow taking snapshot of home when turning screen off to reduce the delay of // unlocking/waking to home. // waking from secure lock to home. snapshotTasks(mTmpTasks, true /* allowSnapshotHome */); final boolean allowSnapshotHome = mService.mPolicy.isKeyguardSecure(mService.mCurrentUserId); snapshotTasks(mTmpTasks, allowSnapshotHome); } } } finally { } finally { listener.onScreenOff(); listener.onScreenOff(); Loading