Loading libs/WindowManager/Shell/src/com/android/wm/shell/common/DisplayController.java +8 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,14 @@ public class DisplayController { return displayManager.getDisplay(displayId); } /** * Get all the displays from DisplayManager. */ public Display[] getDisplays() { final DisplayManager displayManager = mContext.getSystemService(DisplayManager.class); return displayManager.getDisplays(); } /** * Gets the DisplayLayout associated with a display. */ Loading libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +3 −2 Original line number Diff line number Diff line Loading @@ -795,13 +795,14 @@ public abstract class WMShellBaseModule { static KeyguardTransitionHandler provideKeyguardTransitionHandler( ShellInit shellInit, ShellController shellController, DisplayController displayController, Transitions transitions, TaskStackListenerImpl taskStackListener, @ShellMainThread Handler mainHandler, @ShellMainThread ShellExecutor mainExecutor) { return new KeyguardTransitionHandler( shellInit, shellController, transitions, taskStackListener, mainHandler, mainExecutor); shellInit, shellController, displayController, transitions, taskStackListener, mainHandler, mainExecutor); } @WMSingleton Loading libs/WindowManager/Shell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java +10 −4 Original line number Diff line number Diff line Loading @@ -42,6 +42,7 @@ import android.os.IBinder; import android.os.RemoteException; import android.util.ArrayMap; import android.util.Log; import android.view.Display; import android.view.SurfaceControl; import android.view.WindowManager; import android.window.IRemoteTransition; Loading @@ -54,6 +55,7 @@ import android.window.WindowContainerTransaction; import com.android.internal.protolog.ProtoLog; import com.android.window.flags.Flags; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; Loading @@ -80,6 +82,8 @@ public class KeyguardTransitionHandler private final Transitions mTransitions; private final ShellController mShellController; private final DisplayController mDisplayController; private final Handler mMainHandler; private final ShellExecutor mMainExecutor; Loading Loading @@ -121,12 +125,14 @@ public class KeyguardTransitionHandler public KeyguardTransitionHandler( @NonNull ShellInit shellInit, @NonNull ShellController shellController, @NonNull DisplayController displayController, @NonNull Transitions transitions, @NonNull TaskStackListenerImpl taskStackListener, @NonNull Handler mainHandler, @NonNull ShellExecutor mainExecutor) { mTransitions = transitions; mShellController = shellController; mDisplayController = displayController; mMainHandler = mainHandler; mMainExecutor = mainExecutor; mTaskStackListener = taskStackListener; Loading Loading @@ -429,10 +435,10 @@ public class KeyguardTransitionHandler @Override public void startKeyguardTransition(boolean keyguardShowing, boolean aodShowing) { final WindowContainerTransaction wct = new WindowContainerTransaction(); final KeyguardState keyguardState = new KeyguardState.Builder(android.view.Display.DEFAULT_DISPLAY) .setKeyguardShowing(keyguardShowing).setAodShowing(aodShowing).build(); wct.addKeyguardState(keyguardState); for (Display display : mDisplayController.getDisplays()) { wct.addKeyguardState(new KeyguardState.Builder(display.getDisplayId()) .setKeyguardShowing(keyguardShowing).setAodShowing(aodShowing).build()); } mMainExecutor.execute(() -> { mTransitions.startTransition(keyguardShowing ? TRANSIT_TO_FRONT : TRANSIT_TO_BACK, wct, KeyguardTransitionHandler.this); Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +7 −4 Original line number Diff line number Diff line Loading @@ -2875,7 +2875,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, } if (ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { mKeyguardTransitions.startKeyguardTransition(showing, aodShowing); startKeyguardTransition(showing, aodShowing); } else { try { Loading Loading @@ -3019,7 +3019,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, final int keyguardFlag = flags; mUiBgExecutor.execute(() -> { if (ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { mKeyguardTransitions.startKeyguardTransition( startKeyguardTransition( false /* keyguardShowing */, false /* aodShowing */); return; } Loading @@ -3035,6 +3035,10 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, } }; private void startKeyguardTransition(boolean keyguardShowing, boolean aodShowing) { mKeyguardTransitions.startKeyguardTransition(keyguardShowing, aodShowing); } private final Runnable mHideAnimationFinishedRunnable = () -> { Log.e(TAG, "mHideAnimationFinishedRunnable#run"); mHideAnimationRunning = false; Loading Loading @@ -3490,8 +3494,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, mSurfaceBehindRemoteAnimationRequested = true; if (ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { mKeyguardTransitions.startKeyguardTransition( false /* keyguardShowing */, false /* aodShowing */); startKeyguardTransition(false /* keyguardShowing */, false /* aodShowing */); return; } Loading packages/SystemUI/src/com/android/systemui/keyguard/WindowManagerLockscreenVisibilityManager.kt +6 −5 Original line number Diff line number Diff line Loading @@ -122,10 +122,7 @@ constructor( if (visible) { if (enableNewKeyguardShellTransitions) { keyguardTransitions.startKeyguardTransition( false /* keyguardShowing */, false, /* aodShowing */ ) startKeyguardTransition(false, /* keyguardShowing */ false /* aodShowing */) isKeyguardGoingAway = true return } Loading Loading @@ -233,7 +230,7 @@ constructor( "aodVisible=$aodVisible).", ) if (enableNewKeyguardShellTransitions) { keyguardTransitions.startKeyguardTransition(lockscreenShowing, aodVisible) startKeyguardTransition(lockscreenShowing, aodVisible) } else { activityTaskManagerService.setLockScreenShown(lockscreenShowing, aodVisible) } Loading @@ -241,6 +238,10 @@ constructor( this.isAodVisible = aodVisible } private fun startKeyguardTransition(keyguardShowing: Boolean, aodShowing: Boolean) { keyguardTransitions.startKeyguardTransition(keyguardShowing, aodShowing) } private fun endKeyguardGoingAwayAnimation() { if (!isKeyguardGoingAway) { Log.d( Loading Loading
libs/WindowManager/Shell/src/com/android/wm/shell/common/DisplayController.java +8 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,14 @@ public class DisplayController { return displayManager.getDisplay(displayId); } /** * Get all the displays from DisplayManager. */ public Display[] getDisplays() { final DisplayManager displayManager = mContext.getSystemService(DisplayManager.class); return displayManager.getDisplays(); } /** * Gets the DisplayLayout associated with a display. */ Loading
libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +3 −2 Original line number Diff line number Diff line Loading @@ -795,13 +795,14 @@ public abstract class WMShellBaseModule { static KeyguardTransitionHandler provideKeyguardTransitionHandler( ShellInit shellInit, ShellController shellController, DisplayController displayController, Transitions transitions, TaskStackListenerImpl taskStackListener, @ShellMainThread Handler mainHandler, @ShellMainThread ShellExecutor mainExecutor) { return new KeyguardTransitionHandler( shellInit, shellController, transitions, taskStackListener, mainHandler, mainExecutor); shellInit, shellController, displayController, transitions, taskStackListener, mainHandler, mainExecutor); } @WMSingleton Loading
libs/WindowManager/Shell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java +10 −4 Original line number Diff line number Diff line Loading @@ -42,6 +42,7 @@ import android.os.IBinder; import android.os.RemoteException; import android.util.ArrayMap; import android.util.Log; import android.view.Display; import android.view.SurfaceControl; import android.view.WindowManager; import android.window.IRemoteTransition; Loading @@ -54,6 +55,7 @@ import android.window.WindowContainerTransaction; import com.android.internal.protolog.ProtoLog; import com.android.window.flags.Flags; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; Loading @@ -80,6 +82,8 @@ public class KeyguardTransitionHandler private final Transitions mTransitions; private final ShellController mShellController; private final DisplayController mDisplayController; private final Handler mMainHandler; private final ShellExecutor mMainExecutor; Loading Loading @@ -121,12 +125,14 @@ public class KeyguardTransitionHandler public KeyguardTransitionHandler( @NonNull ShellInit shellInit, @NonNull ShellController shellController, @NonNull DisplayController displayController, @NonNull Transitions transitions, @NonNull TaskStackListenerImpl taskStackListener, @NonNull Handler mainHandler, @NonNull ShellExecutor mainExecutor) { mTransitions = transitions; mShellController = shellController; mDisplayController = displayController; mMainHandler = mainHandler; mMainExecutor = mainExecutor; mTaskStackListener = taskStackListener; Loading Loading @@ -429,10 +435,10 @@ public class KeyguardTransitionHandler @Override public void startKeyguardTransition(boolean keyguardShowing, boolean aodShowing) { final WindowContainerTransaction wct = new WindowContainerTransaction(); final KeyguardState keyguardState = new KeyguardState.Builder(android.view.Display.DEFAULT_DISPLAY) .setKeyguardShowing(keyguardShowing).setAodShowing(aodShowing).build(); wct.addKeyguardState(keyguardState); for (Display display : mDisplayController.getDisplays()) { wct.addKeyguardState(new KeyguardState.Builder(display.getDisplayId()) .setKeyguardShowing(keyguardShowing).setAodShowing(aodShowing).build()); } mMainExecutor.execute(() -> { mTransitions.startTransition(keyguardShowing ? TRANSIT_TO_FRONT : TRANSIT_TO_BACK, wct, KeyguardTransitionHandler.this); Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +7 −4 Original line number Diff line number Diff line Loading @@ -2875,7 +2875,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, } if (ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { mKeyguardTransitions.startKeyguardTransition(showing, aodShowing); startKeyguardTransition(showing, aodShowing); } else { try { Loading Loading @@ -3019,7 +3019,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, final int keyguardFlag = flags; mUiBgExecutor.execute(() -> { if (ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { mKeyguardTransitions.startKeyguardTransition( startKeyguardTransition( false /* keyguardShowing */, false /* aodShowing */); return; } Loading @@ -3035,6 +3035,10 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, } }; private void startKeyguardTransition(boolean keyguardShowing, boolean aodShowing) { mKeyguardTransitions.startKeyguardTransition(keyguardShowing, aodShowing); } private final Runnable mHideAnimationFinishedRunnable = () -> { Log.e(TAG, "mHideAnimationFinishedRunnable#run"); mHideAnimationRunning = false; Loading Loading @@ -3490,8 +3494,7 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable, mSurfaceBehindRemoteAnimationRequested = true; if (ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { mKeyguardTransitions.startKeyguardTransition( false /* keyguardShowing */, false /* aodShowing */); startKeyguardTransition(false /* keyguardShowing */, false /* aodShowing */); return; } Loading
packages/SystemUI/src/com/android/systemui/keyguard/WindowManagerLockscreenVisibilityManager.kt +6 −5 Original line number Diff line number Diff line Loading @@ -122,10 +122,7 @@ constructor( if (visible) { if (enableNewKeyguardShellTransitions) { keyguardTransitions.startKeyguardTransition( false /* keyguardShowing */, false, /* aodShowing */ ) startKeyguardTransition(false, /* keyguardShowing */ false /* aodShowing */) isKeyguardGoingAway = true return } Loading Loading @@ -233,7 +230,7 @@ constructor( "aodVisible=$aodVisible).", ) if (enableNewKeyguardShellTransitions) { keyguardTransitions.startKeyguardTransition(lockscreenShowing, aodVisible) startKeyguardTransition(lockscreenShowing, aodVisible) } else { activityTaskManagerService.setLockScreenShown(lockscreenShowing, aodVisible) } Loading @@ -241,6 +238,10 @@ constructor( this.isAodVisible = aodVisible } private fun startKeyguardTransition(keyguardShowing: Boolean, aodShowing: Boolean) { keyguardTransitions.startKeyguardTransition(keyguardShowing, aodShowing) } private fun endKeyguardGoingAwayAnimation() { if (!isKeyguardGoingAway) { Log.d( Loading