Loading services/core/java/com/android/server/am/LockTaskController.java +2 −0 Original line number Diff line number Diff line Loading @@ -469,6 +469,7 @@ public class LockTaskController { if (mLockTaskModeState == LOCK_TASK_MODE_PINNED) { getStatusBarService().showPinningEnterExitToast(false /* entering */); } mWindowManager.onLockTaskStateChanged(LOCK_TASK_MODE_NONE); } catch (RemoteException ex) { throw new RuntimeException(ex); } finally { Loading Loading @@ -580,6 +581,7 @@ public class LockTaskController { if (lockTaskModeState == LOCK_TASK_MODE_PINNED) { getStatusBarService().showPinningEnterExitToast(true /* entering */); } mWindowManager.onLockTaskStateChanged(lockTaskModeState); mLockTaskModeState = lockTaskModeState; setStatusBarState(lockTaskModeState, userId); setKeyguardState(lockTaskModeState, userId); Loading services/core/java/com/android/server/policy/ImmersiveModeConfirmation.java +10 −1 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.server.policy; import static android.app.ActivityManager.LOCK_TASK_MODE_LOCKED; import static android.app.ActivityManager.LOCK_TASK_MODE_NONE; import android.animation.ArgbEvaluator; import android.animation.ValueAnimator; import android.app.ActivityManager; Loading Loading @@ -78,6 +81,7 @@ public class ImmersiveModeConfirmation { // Local copy of vr mode enabled state, to avoid calling into VrManager with // the lock held. boolean mVrModeEnabled = false; private int mLockTaskState = LOCK_TASK_MODE_NONE; public ImmersiveModeConfirmation(Context context) { mContext = ActivityThread.currentActivityThread().getSystemUiContext(); Loading Loading @@ -148,7 +152,8 @@ public class ImmersiveModeConfirmation { && userSetupComplete && !mVrModeEnabled && !navBarEmpty && !UserManager.isDeviceInDemoMode(mContext)) { && !UserManager.isDeviceInDemoMode(mContext) && (mLockTaskState != LOCK_TASK_MODE_LOCKED)) { mHandler.sendEmptyMessageDelayed(H.SHOW, mShowDelayMs); } } else { Loading Loading @@ -401,4 +406,8 @@ public class ImmersiveModeConfirmation { } } }; void onLockTaskModeChangedLw(int lockTaskState) { mLockTaskState = lockTaskState; } } services/core/java/com/android/server/policy/PhoneWindowManager.java +5 −0 Original line number Diff line number Diff line Loading @@ -8811,4 +8811,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { return Integer.toString(behavior); } } @Override public void onLockTaskStateChangedLw(int lockTaskState) { mImmersiveModeConfirmation.onLockTaskModeChangedLw(lockTaskState); } } services/core/java/com/android/server/policy/WindowManagerPolicy.java +12 −0 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ import static java.lang.annotation.RetentionPolicy.SOURCE; import android.Manifest; import android.annotation.IntDef; import android.annotation.Nullable; import android.app.ActivityManager; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.CompatibilityInfo; Loading Loading @@ -1731,4 +1732,15 @@ public interface WindowManagerPolicy extends WindowManagerPolicyConstants { * on the next user activity. */ public void requestUserActivityNotification(); /** * Called when the state of lock task mode changes. This should be used to disable immersive * mode confirmation. * * @param lockTaskState the new lock task mode state. One of * {@link ActivityManager#LOCK_TASK_MODE_NONE}, * {@link ActivityManager#LOCK_TASK_MODE_LOCKED}, * {@link ActivityManager#LOCK_TASK_MODE_PINNED}. */ void onLockTaskStateChangedLw(int lockTaskState); } services/core/java/com/android/server/wm/WindowManagerService.java +15 −1 Original line number Diff line number Diff line Loading @@ -7438,5 +7438,19 @@ public class WindowManagerService extends IWindowManager.Stub mH.obtainMessage(H.SET_RUNNING_REMOTE_ANIMATION, pid, runningRemoteAnimation ? 1 : 0) .sendToTarget(); } } /** * Called when the state of lock task mode changes. This should be used to disable immersive * mode confirmation. * * @param lockTaskState the new lock task mode state. One of * {@link ActivityManager#LOCK_TASK_MODE_NONE}, * {@link ActivityManager#LOCK_TASK_MODE_LOCKED}, * {@link ActivityManager#LOCK_TASK_MODE_PINNED}. */ public void onLockTaskStateChanged(int lockTaskState) { synchronized (mWindowMap) { mPolicy.onLockTaskStateChangedLw(lockTaskState); } } } Loading
services/core/java/com/android/server/am/LockTaskController.java +2 −0 Original line number Diff line number Diff line Loading @@ -469,6 +469,7 @@ public class LockTaskController { if (mLockTaskModeState == LOCK_TASK_MODE_PINNED) { getStatusBarService().showPinningEnterExitToast(false /* entering */); } mWindowManager.onLockTaskStateChanged(LOCK_TASK_MODE_NONE); } catch (RemoteException ex) { throw new RuntimeException(ex); } finally { Loading Loading @@ -580,6 +581,7 @@ public class LockTaskController { if (lockTaskModeState == LOCK_TASK_MODE_PINNED) { getStatusBarService().showPinningEnterExitToast(true /* entering */); } mWindowManager.onLockTaskStateChanged(lockTaskModeState); mLockTaskModeState = lockTaskModeState; setStatusBarState(lockTaskModeState, userId); setKeyguardState(lockTaskModeState, userId); Loading
services/core/java/com/android/server/policy/ImmersiveModeConfirmation.java +10 −1 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.server.policy; import static android.app.ActivityManager.LOCK_TASK_MODE_LOCKED; import static android.app.ActivityManager.LOCK_TASK_MODE_NONE; import android.animation.ArgbEvaluator; import android.animation.ValueAnimator; import android.app.ActivityManager; Loading Loading @@ -78,6 +81,7 @@ public class ImmersiveModeConfirmation { // Local copy of vr mode enabled state, to avoid calling into VrManager with // the lock held. boolean mVrModeEnabled = false; private int mLockTaskState = LOCK_TASK_MODE_NONE; public ImmersiveModeConfirmation(Context context) { mContext = ActivityThread.currentActivityThread().getSystemUiContext(); Loading Loading @@ -148,7 +152,8 @@ public class ImmersiveModeConfirmation { && userSetupComplete && !mVrModeEnabled && !navBarEmpty && !UserManager.isDeviceInDemoMode(mContext)) { && !UserManager.isDeviceInDemoMode(mContext) && (mLockTaskState != LOCK_TASK_MODE_LOCKED)) { mHandler.sendEmptyMessageDelayed(H.SHOW, mShowDelayMs); } } else { Loading Loading @@ -401,4 +406,8 @@ public class ImmersiveModeConfirmation { } } }; void onLockTaskModeChangedLw(int lockTaskState) { mLockTaskState = lockTaskState; } }
services/core/java/com/android/server/policy/PhoneWindowManager.java +5 −0 Original line number Diff line number Diff line Loading @@ -8811,4 +8811,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { return Integer.toString(behavior); } } @Override public void onLockTaskStateChangedLw(int lockTaskState) { mImmersiveModeConfirmation.onLockTaskModeChangedLw(lockTaskState); } }
services/core/java/com/android/server/policy/WindowManagerPolicy.java +12 −0 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ import static java.lang.annotation.RetentionPolicy.SOURCE; import android.Manifest; import android.annotation.IntDef; import android.annotation.Nullable; import android.app.ActivityManager; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.CompatibilityInfo; Loading Loading @@ -1731,4 +1732,15 @@ public interface WindowManagerPolicy extends WindowManagerPolicyConstants { * on the next user activity. */ public void requestUserActivityNotification(); /** * Called when the state of lock task mode changes. This should be used to disable immersive * mode confirmation. * * @param lockTaskState the new lock task mode state. One of * {@link ActivityManager#LOCK_TASK_MODE_NONE}, * {@link ActivityManager#LOCK_TASK_MODE_LOCKED}, * {@link ActivityManager#LOCK_TASK_MODE_PINNED}. */ void onLockTaskStateChangedLw(int lockTaskState); }
services/core/java/com/android/server/wm/WindowManagerService.java +15 −1 Original line number Diff line number Diff line Loading @@ -7438,5 +7438,19 @@ public class WindowManagerService extends IWindowManager.Stub mH.obtainMessage(H.SET_RUNNING_REMOTE_ANIMATION, pid, runningRemoteAnimation ? 1 : 0) .sendToTarget(); } } /** * Called when the state of lock task mode changes. This should be used to disable immersive * mode confirmation. * * @param lockTaskState the new lock task mode state. One of * {@link ActivityManager#LOCK_TASK_MODE_NONE}, * {@link ActivityManager#LOCK_TASK_MODE_LOCKED}, * {@link ActivityManager#LOCK_TASK_MODE_PINNED}. */ public void onLockTaskStateChanged(int lockTaskState) { synchronized (mWindowMap) { mPolicy.onLockTaskStateChangedLw(lockTaskState); } } }