Loading packages/SystemUI/src/com/android/systemui/doze/DozeMachine.java +7 −6 Original line number Diff line number Diff line Loading @@ -269,9 +269,10 @@ public class DozeMachine { return mPulseReason; } /** Requests the PowerManager to wake up now. */ public void wakeUp() { mDozeService.requestWakeUp(); /** Requests the PowerManager to wake up now. * @param reason {@link DozeLog.Reason} that woke up the device.*/ public void wakeUp(@DozeLog.Reason int reason) { mDozeService.requestWakeUp(reason); } public boolean isExecutingTransition() { Loading Loading @@ -469,7 +470,7 @@ public class DozeMachine { void setDozeScreenState(int state); /** Request waking up. */ void requestWakeUp(); void requestWakeUp(@DozeLog.Reason int reason); /** Set screen brightness */ void setDozeScreenBrightness(int brightness); Loading @@ -492,8 +493,8 @@ public class DozeMachine { } @Override public void requestWakeUp() { mDelegate.requestWakeUp(); public void requestWakeUp(@DozeLog.Reason int reason) { mDelegate.requestWakeUp(reason); } @Override Loading packages/SystemUI/src/com/android/systemui/doze/DozeService.java +2 −2 Original line number Diff line number Diff line Loading @@ -113,10 +113,10 @@ public class DozeService extends DreamService } @Override public void requestWakeUp() { public void requestWakeUp(@DozeLog.Reason int reason) { PowerManager pm = getSystemService(PowerManager.class); pm.wakeUp(SystemClock.uptimeMillis(), PowerManager.WAKE_REASON_GESTURE, "com.android.systemui:NODOZE"); "com.android.systemui:NODOZE " + DozeLog.reasonToString(reason)); } @Override Loading packages/SystemUI/src/com/android/systemui/doze/DozeTriggers.java +21 −20 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.systemui.doze; import static android.app.StatusBarManager.SESSION_KEYGUARD; import static com.android.systemui.doze.DozeMachine.State.DOZE_SUSPEND_TRIGGERS; import static com.android.systemui.doze.DozeMachine.State.FINISH; import static com.android.systemui.doze.DozeMachine.State.UNINITIALIZED; Loading @@ -34,19 +36,19 @@ import android.util.Log; import android.view.Display; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.InstanceId; import com.android.internal.logging.UiEvent; import com.android.internal.logging.UiEventLogger; import com.android.systemui.biometrics.AuthController; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.dock.DockManager; import com.android.systemui.doze.DozeMachine.State; import com.android.systemui.doze.dagger.DozeScope; import com.android.systemui.log.SessionTracker; import com.android.systemui.statusbar.phone.DozeParameters; import com.android.systemui.statusbar.policy.DevicePostureController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.util.Assert; import com.android.systemui.util.concurrency.DelayableExecutor; import com.android.systemui.util.sensors.AsyncSensorManager; import com.android.systemui.util.sensors.ProximityCheck; import com.android.systemui.util.sensors.ProximitySensor; Loading Loading @@ -80,6 +82,7 @@ public class DozeTriggers implements DozeMachine.Part { private static final int PROXIMITY_TIMEOUT_DELAY_MS = 500; private final Context mContext; private final SessionTracker mSessionTracker; private DozeMachine mMachine; private final DozeLog mDozeLog; private final DozeSensors mDozeSensors; Loading @@ -95,10 +98,8 @@ public class DozeTriggers implements DozeMachine.Part { private final ProximityCheck mProxCheck; private final BroadcastDispatcher mBroadcastDispatcher; private final AuthController mAuthController; private final DelayableExecutor mMainExecutor; private final KeyguardStateController mKeyguardStateController; private final UiEventLogger mUiEventLogger; private final DevicePostureController mDevicePostureController; private long mNotificationPulseTime; private boolean mPulsePending; Loading Loading @@ -185,8 +186,8 @@ public class DozeTriggers implements DozeMachine.Part { ProximityCheck proxCheck, DozeLog dozeLog, BroadcastDispatcher broadcastDispatcher, SecureSettings secureSettings, AuthController authController, @Main DelayableExecutor mainExecutor, UiEventLogger uiEventLogger, SessionTracker sessionTracker, KeyguardStateController keyguardStateController, DevicePostureController devicePostureController) { mContext = context; Loading @@ -196,8 +197,8 @@ public class DozeTriggers implements DozeMachine.Part { mSensorManager = sensorManager; mWakeLock = wakeLock; mAllowPulseTriggers = true; mSessionTracker = sessionTracker; mDevicePostureController = devicePostureController; mDozeSensors = new DozeSensors(context, mSensorManager, dozeParameters, config, wakeLock, this::onSensor, this::onProximityFar, dozeLog, proximitySensor, secureSettings, authController, devicePostureController); Loading @@ -206,14 +207,9 @@ public class DozeTriggers implements DozeMachine.Part { mDozeLog = dozeLog; mBroadcastDispatcher = broadcastDispatcher; mAuthController = authController; mMainExecutor = mainExecutor; mUiEventLogger = uiEventLogger; mKeyguardStateController = keyguardStateController; } private final DevicePostureController.Callback mDevicePostureCallback = posture -> { }; @Override public void setDozeMachine(DozeMachine dozeMachine) { Loading Loading @@ -271,7 +267,7 @@ public class DozeTriggers implements DozeMachine.Part { mProxCheck.check(PROXIMITY_TIMEOUT_DELAY_MS, near -> { final long end = SystemClock.uptimeMillis(); mDozeLog.traceProximityResult( near == null ? false : near, near != null && near, end - start, reason); callback.accept(near); Loading Loading @@ -354,17 +350,17 @@ public class DozeTriggers implements DozeMachine.Part { return mKeyguardStateController.isOccluded(); } private void gentleWakeUp(int reason) { private void gentleWakeUp(@DozeLog.Reason int reason) { // Log screen wake up reason (lift/pickup, tap, double-tap) Optional.ofNullable(DozingUpdateUiEvent.fromReason(reason)) .ifPresent(mUiEventLogger::log); .ifPresent(uiEventEnum -> mUiEventLogger.log(uiEventEnum, getKeyguardSessionId())); if (mDozeParameters.getDisplayNeedsBlanking()) { // Let's prepare the display to wake-up by drawing black. // This will cover the hardware wake-up sequence, where the display // becomes black for a few frames. mDozeHost.setAodDimmingScrim(1f); } mMachine.wakeUp(); mMachine.wakeUp(reason); } private void onProximityFar(boolean far) { Loading @@ -384,11 +380,10 @@ public class DozeTriggers implements DozeMachine.Part { if (state == DozeMachine.State.DOZE_PULSING || state == DozeMachine.State.DOZE_PULSING_BRIGHT) { boolean ignoreTouch = near; if (DEBUG) { Log.i(TAG, "Prox changed, ignore touch = " + ignoreTouch); Log.i(TAG, "Prox changed, ignore touch = " + near); } mDozeHost.onIgnoreTouchWhilePulsing(ignoreTouch); mDozeHost.onIgnoreTouchWhilePulsing(near); } if (far && (paused || pausing)) { Loading Loading @@ -424,7 +419,8 @@ public class DozeTriggers implements DozeMachine.Part { mMachine.requestState(DozeMachine.State.DOZE_AOD); // Log sensor triggered Optional.ofNullable(DozingUpdateUiEvent.fromReason(reason)) .ifPresent(mUiEventLogger::log); .ifPresent(uiEventEnum -> mUiEventLogger.log(uiEventEnum, getKeyguardSessionId())); } }, false /* alreadyPerformedProxCheck */, reason); } else { Loading Loading @@ -564,7 +560,7 @@ public class DozeTriggers implements DozeMachine.Part { // Logs request pulse reason on AOD screen. Optional.ofNullable(DozingUpdateUiEvent.fromReason(reason)) .ifPresent(mUiEventLogger::log); .ifPresent(uiEventEnum -> mUiEventLogger.log(uiEventEnum, getKeyguardSessionId())); } private boolean canPulse() { Loading @@ -583,6 +579,11 @@ public class DozeTriggers implements DozeMachine.Part { mMachine.requestPulse(reason); } @Nullable private InstanceId getKeyguardSessionId() { return mSessionTracker.getSessionId(SESSION_KEYGUARD); } @Override public void dump(PrintWriter pw) { pw.println(" mAodInterruptRunnable=" + mAodInterruptRunnable); Loading packages/SystemUI/tests/src/com/android/systemui/doze/DozeMachineTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -448,7 +448,7 @@ public class DozeMachineTest extends SysuiTestCase { @Test public void testWakeUp_wakesUp() { mMachine.wakeUp(); mMachine.wakeUp(DozeLog.REASON_SENSOR_PICKUP); assertTrue(mServiceFake.requestedWakeup); } Loading packages/SystemUI/tests/src/com/android/systemui/doze/DozeScreenStatePreventingAdapterTest.java +3 −3 Original line number Diff line number Diff line Loading @@ -75,9 +75,9 @@ public class DozeScreenStatePreventingAdapterTest extends SysuiTestCase { } @Test public void forwards_requestWakeUp() throws Exception { mWrapper.requestWakeUp(); verify(mInner).requestWakeUp(); public void forwards_requestWakeUp() { mWrapper.requestWakeUp(DozeLog.REASON_SENSOR_PICKUP); verify(mInner).requestWakeUp(DozeLog.REASON_SENSOR_PICKUP); } @Test Loading Loading
packages/SystemUI/src/com/android/systemui/doze/DozeMachine.java +7 −6 Original line number Diff line number Diff line Loading @@ -269,9 +269,10 @@ public class DozeMachine { return mPulseReason; } /** Requests the PowerManager to wake up now. */ public void wakeUp() { mDozeService.requestWakeUp(); /** Requests the PowerManager to wake up now. * @param reason {@link DozeLog.Reason} that woke up the device.*/ public void wakeUp(@DozeLog.Reason int reason) { mDozeService.requestWakeUp(reason); } public boolean isExecutingTransition() { Loading Loading @@ -469,7 +470,7 @@ public class DozeMachine { void setDozeScreenState(int state); /** Request waking up. */ void requestWakeUp(); void requestWakeUp(@DozeLog.Reason int reason); /** Set screen brightness */ void setDozeScreenBrightness(int brightness); Loading @@ -492,8 +493,8 @@ public class DozeMachine { } @Override public void requestWakeUp() { mDelegate.requestWakeUp(); public void requestWakeUp(@DozeLog.Reason int reason) { mDelegate.requestWakeUp(reason); } @Override Loading
packages/SystemUI/src/com/android/systemui/doze/DozeService.java +2 −2 Original line number Diff line number Diff line Loading @@ -113,10 +113,10 @@ public class DozeService extends DreamService } @Override public void requestWakeUp() { public void requestWakeUp(@DozeLog.Reason int reason) { PowerManager pm = getSystemService(PowerManager.class); pm.wakeUp(SystemClock.uptimeMillis(), PowerManager.WAKE_REASON_GESTURE, "com.android.systemui:NODOZE"); "com.android.systemui:NODOZE " + DozeLog.reasonToString(reason)); } @Override Loading
packages/SystemUI/src/com/android/systemui/doze/DozeTriggers.java +21 −20 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.systemui.doze; import static android.app.StatusBarManager.SESSION_KEYGUARD; import static com.android.systemui.doze.DozeMachine.State.DOZE_SUSPEND_TRIGGERS; import static com.android.systemui.doze.DozeMachine.State.FINISH; import static com.android.systemui.doze.DozeMachine.State.UNINITIALIZED; Loading @@ -34,19 +36,19 @@ import android.util.Log; import android.view.Display; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.InstanceId; import com.android.internal.logging.UiEvent; import com.android.internal.logging.UiEventLogger; import com.android.systemui.biometrics.AuthController; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.dock.DockManager; import com.android.systemui.doze.DozeMachine.State; import com.android.systemui.doze.dagger.DozeScope; import com.android.systemui.log.SessionTracker; import com.android.systemui.statusbar.phone.DozeParameters; import com.android.systemui.statusbar.policy.DevicePostureController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.util.Assert; import com.android.systemui.util.concurrency.DelayableExecutor; import com.android.systemui.util.sensors.AsyncSensorManager; import com.android.systemui.util.sensors.ProximityCheck; import com.android.systemui.util.sensors.ProximitySensor; Loading Loading @@ -80,6 +82,7 @@ public class DozeTriggers implements DozeMachine.Part { private static final int PROXIMITY_TIMEOUT_DELAY_MS = 500; private final Context mContext; private final SessionTracker mSessionTracker; private DozeMachine mMachine; private final DozeLog mDozeLog; private final DozeSensors mDozeSensors; Loading @@ -95,10 +98,8 @@ public class DozeTriggers implements DozeMachine.Part { private final ProximityCheck mProxCheck; private final BroadcastDispatcher mBroadcastDispatcher; private final AuthController mAuthController; private final DelayableExecutor mMainExecutor; private final KeyguardStateController mKeyguardStateController; private final UiEventLogger mUiEventLogger; private final DevicePostureController mDevicePostureController; private long mNotificationPulseTime; private boolean mPulsePending; Loading Loading @@ -185,8 +186,8 @@ public class DozeTriggers implements DozeMachine.Part { ProximityCheck proxCheck, DozeLog dozeLog, BroadcastDispatcher broadcastDispatcher, SecureSettings secureSettings, AuthController authController, @Main DelayableExecutor mainExecutor, UiEventLogger uiEventLogger, SessionTracker sessionTracker, KeyguardStateController keyguardStateController, DevicePostureController devicePostureController) { mContext = context; Loading @@ -196,8 +197,8 @@ public class DozeTriggers implements DozeMachine.Part { mSensorManager = sensorManager; mWakeLock = wakeLock; mAllowPulseTriggers = true; mSessionTracker = sessionTracker; mDevicePostureController = devicePostureController; mDozeSensors = new DozeSensors(context, mSensorManager, dozeParameters, config, wakeLock, this::onSensor, this::onProximityFar, dozeLog, proximitySensor, secureSettings, authController, devicePostureController); Loading @@ -206,14 +207,9 @@ public class DozeTriggers implements DozeMachine.Part { mDozeLog = dozeLog; mBroadcastDispatcher = broadcastDispatcher; mAuthController = authController; mMainExecutor = mainExecutor; mUiEventLogger = uiEventLogger; mKeyguardStateController = keyguardStateController; } private final DevicePostureController.Callback mDevicePostureCallback = posture -> { }; @Override public void setDozeMachine(DozeMachine dozeMachine) { Loading Loading @@ -271,7 +267,7 @@ public class DozeTriggers implements DozeMachine.Part { mProxCheck.check(PROXIMITY_TIMEOUT_DELAY_MS, near -> { final long end = SystemClock.uptimeMillis(); mDozeLog.traceProximityResult( near == null ? false : near, near != null && near, end - start, reason); callback.accept(near); Loading Loading @@ -354,17 +350,17 @@ public class DozeTriggers implements DozeMachine.Part { return mKeyguardStateController.isOccluded(); } private void gentleWakeUp(int reason) { private void gentleWakeUp(@DozeLog.Reason int reason) { // Log screen wake up reason (lift/pickup, tap, double-tap) Optional.ofNullable(DozingUpdateUiEvent.fromReason(reason)) .ifPresent(mUiEventLogger::log); .ifPresent(uiEventEnum -> mUiEventLogger.log(uiEventEnum, getKeyguardSessionId())); if (mDozeParameters.getDisplayNeedsBlanking()) { // Let's prepare the display to wake-up by drawing black. // This will cover the hardware wake-up sequence, where the display // becomes black for a few frames. mDozeHost.setAodDimmingScrim(1f); } mMachine.wakeUp(); mMachine.wakeUp(reason); } private void onProximityFar(boolean far) { Loading @@ -384,11 +380,10 @@ public class DozeTriggers implements DozeMachine.Part { if (state == DozeMachine.State.DOZE_PULSING || state == DozeMachine.State.DOZE_PULSING_BRIGHT) { boolean ignoreTouch = near; if (DEBUG) { Log.i(TAG, "Prox changed, ignore touch = " + ignoreTouch); Log.i(TAG, "Prox changed, ignore touch = " + near); } mDozeHost.onIgnoreTouchWhilePulsing(ignoreTouch); mDozeHost.onIgnoreTouchWhilePulsing(near); } if (far && (paused || pausing)) { Loading Loading @@ -424,7 +419,8 @@ public class DozeTriggers implements DozeMachine.Part { mMachine.requestState(DozeMachine.State.DOZE_AOD); // Log sensor triggered Optional.ofNullable(DozingUpdateUiEvent.fromReason(reason)) .ifPresent(mUiEventLogger::log); .ifPresent(uiEventEnum -> mUiEventLogger.log(uiEventEnum, getKeyguardSessionId())); } }, false /* alreadyPerformedProxCheck */, reason); } else { Loading Loading @@ -564,7 +560,7 @@ public class DozeTriggers implements DozeMachine.Part { // Logs request pulse reason on AOD screen. Optional.ofNullable(DozingUpdateUiEvent.fromReason(reason)) .ifPresent(mUiEventLogger::log); .ifPresent(uiEventEnum -> mUiEventLogger.log(uiEventEnum, getKeyguardSessionId())); } private boolean canPulse() { Loading @@ -583,6 +579,11 @@ public class DozeTriggers implements DozeMachine.Part { mMachine.requestPulse(reason); } @Nullable private InstanceId getKeyguardSessionId() { return mSessionTracker.getSessionId(SESSION_KEYGUARD); } @Override public void dump(PrintWriter pw) { pw.println(" mAodInterruptRunnable=" + mAodInterruptRunnable); Loading
packages/SystemUI/tests/src/com/android/systemui/doze/DozeMachineTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -448,7 +448,7 @@ public class DozeMachineTest extends SysuiTestCase { @Test public void testWakeUp_wakesUp() { mMachine.wakeUp(); mMachine.wakeUp(DozeLog.REASON_SENSOR_PICKUP); assertTrue(mServiceFake.requestedWakeup); } Loading
packages/SystemUI/tests/src/com/android/systemui/doze/DozeScreenStatePreventingAdapterTest.java +3 −3 Original line number Diff line number Diff line Loading @@ -75,9 +75,9 @@ public class DozeScreenStatePreventingAdapterTest extends SysuiTestCase { } @Test public void forwards_requestWakeUp() throws Exception { mWrapper.requestWakeUp(); verify(mInner).requestWakeUp(); public void forwards_requestWakeUp() { mWrapper.requestWakeUp(DozeLog.REASON_SENSOR_PICKUP); verify(mInner).requestWakeUp(DozeLog.REASON_SENSOR_PICKUP); } @Test Loading