Loading packages/SystemUI/src/com/android/systemui/doze/DozeSensors.java +5 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static com.android.systemui.plugins.SensorManagerPlugin.Sensor.TYPE_WAKE_ import static com.android.systemui.plugins.SensorManagerPlugin.Sensor.TYPE_WAKE_LOCK_SCREEN; import android.annotation.AnyThread; import android.content.res.Resources; import android.database.ContentObserver; import android.hardware.Sensor; import android.hardware.SensorManager; Loading @@ -40,6 +41,7 @@ import android.view.Display; import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import com.android.internal.R; import com.android.internal.logging.UiEvent; import com.android.internal.logging.UiEventLogger; import com.android.internal.logging.UiEventLoggerImpl; Loading Loading @@ -140,6 +142,7 @@ public class DozeSensors { } DozeSensors( Resources resources, AsyncSensorManager sensorManager, DozeParameters dozeParameters, AmbientDisplayConfiguration config, Loading Loading @@ -185,7 +188,8 @@ public class DozeSensors { new TriggerSensor( mSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE), Settings.Secure.DOZE_PICK_UP_GESTURE, true /* settingDef */, resources.getBoolean( R.bool.config_dozePickupGestureEnabled) /* settingDef */, config.dozePickupSensorAvailable(), DozeLog.REASON_SENSOR_PICKUP, false /* touchCoords */, false /* touchscreen */, Loading packages/SystemUI/src/com/android/systemui/doze/DozeTriggers.java +1 −1 Original line number Diff line number Diff line Loading @@ -210,7 +210,7 @@ public class DozeTriggers implements DozeMachine.Part { mAllowPulseTriggers = true; mSessionTracker = sessionTracker; mDozeSensors = new DozeSensors(mSensorManager, dozeParameters, mDozeSensors = new DozeSensors(mContext.getResources(), mSensorManager, dozeParameters, config, wakeLock, this::onSensor, this::onProximityFar, dozeLog, proximitySensor, secureSettings, authController, devicePostureController, userTracker); mDockManager = dockManager; Loading packages/SystemUI/tests/src/com/android/systemui/doze/DozeSensorsTest.java +43 −3 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.res.Resources; import android.database.ContentObserver; import android.hardware.Sensor; import android.hardware.display.AmbientDisplayConfiguration; Loading Loading @@ -76,7 +77,8 @@ import java.util.function.Consumer; @RunWithLooper @SmallTest public class DozeSensorsTest extends SysuiTestCase { @Mock private Resources mResources; @Mock private AsyncSensorManager mSensorManager; @Mock Loading Loading @@ -426,7 +428,7 @@ public class DozeSensorsTest extends SysuiTestCase { @Test public void testGesturesAllInitiallyRespectSettings() { DozeSensors dozeSensors = new DozeSensors(mSensorManager, mDozeParameters, DozeSensors dozeSensors = new DozeSensors(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); Loading @@ -436,9 +438,47 @@ public class DozeSensorsTest extends SysuiTestCase { } } @Test public void liftToWake_defaultSetting_configDefaultFalse() { // WHEN the default lift to wake gesture setting is false when(mResources.getBoolean( com.android.internal.R.bool.config_dozePickupGestureEnabled)).thenReturn(false); DozeSensors dozeSensors = new DozeSensors(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); for (TriggerSensor sensor : dozeSensors.mTriggerSensors) { // THEN lift to wake's TriggerSensor enabledBySettings is false if (sensor.mPulseReason == DozeLog.REASON_SENSOR_PICKUP) { assertFalse(sensor.enabledBySetting()); } } } @Test public void liftToWake_defaultSetting_configDefaultTrue() { // WHEN the default lift to wake gesture setting is true when(mResources.getBoolean( com.android.internal.R.bool.config_dozePickupGestureEnabled)).thenReturn(true); DozeSensors dozeSensors = new DozeSensors(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); for (TriggerSensor sensor : dozeSensors.mTriggerSensors) { // THEN lift to wake's TriggerSensor enabledBySettings is true if (sensor.mPulseReason == DozeLog.REASON_SENSOR_PICKUP) { assertTrue(sensor.enabledBySetting()); } } } private class TestableDozeSensors extends DozeSensors { TestableDozeSensors() { super(mSensorManager, mDozeParameters, super(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); Loading Loading
packages/SystemUI/src/com/android/systemui/doze/DozeSensors.java +5 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static com.android.systemui.plugins.SensorManagerPlugin.Sensor.TYPE_WAKE_ import static com.android.systemui.plugins.SensorManagerPlugin.Sensor.TYPE_WAKE_LOCK_SCREEN; import android.annotation.AnyThread; import android.content.res.Resources; import android.database.ContentObserver; import android.hardware.Sensor; import android.hardware.SensorManager; Loading @@ -40,6 +41,7 @@ import android.view.Display; import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import com.android.internal.R; import com.android.internal.logging.UiEvent; import com.android.internal.logging.UiEventLogger; import com.android.internal.logging.UiEventLoggerImpl; Loading Loading @@ -140,6 +142,7 @@ public class DozeSensors { } DozeSensors( Resources resources, AsyncSensorManager sensorManager, DozeParameters dozeParameters, AmbientDisplayConfiguration config, Loading Loading @@ -185,7 +188,8 @@ public class DozeSensors { new TriggerSensor( mSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE), Settings.Secure.DOZE_PICK_UP_GESTURE, true /* settingDef */, resources.getBoolean( R.bool.config_dozePickupGestureEnabled) /* settingDef */, config.dozePickupSensorAvailable(), DozeLog.REASON_SENSOR_PICKUP, false /* touchCoords */, false /* touchscreen */, Loading
packages/SystemUI/src/com/android/systemui/doze/DozeTriggers.java +1 −1 Original line number Diff line number Diff line Loading @@ -210,7 +210,7 @@ public class DozeTriggers implements DozeMachine.Part { mAllowPulseTriggers = true; mSessionTracker = sessionTracker; mDozeSensors = new DozeSensors(mSensorManager, dozeParameters, mDozeSensors = new DozeSensors(mContext.getResources(), mSensorManager, dozeParameters, config, wakeLock, this::onSensor, this::onProximityFar, dozeLog, proximitySensor, secureSettings, authController, devicePostureController, userTracker); mDockManager = dockManager; Loading
packages/SystemUI/tests/src/com/android/systemui/doze/DozeSensorsTest.java +43 −3 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.res.Resources; import android.database.ContentObserver; import android.hardware.Sensor; import android.hardware.display.AmbientDisplayConfiguration; Loading Loading @@ -76,7 +77,8 @@ import java.util.function.Consumer; @RunWithLooper @SmallTest public class DozeSensorsTest extends SysuiTestCase { @Mock private Resources mResources; @Mock private AsyncSensorManager mSensorManager; @Mock Loading Loading @@ -426,7 +428,7 @@ public class DozeSensorsTest extends SysuiTestCase { @Test public void testGesturesAllInitiallyRespectSettings() { DozeSensors dozeSensors = new DozeSensors(mSensorManager, mDozeParameters, DozeSensors dozeSensors = new DozeSensors(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); Loading @@ -436,9 +438,47 @@ public class DozeSensorsTest extends SysuiTestCase { } } @Test public void liftToWake_defaultSetting_configDefaultFalse() { // WHEN the default lift to wake gesture setting is false when(mResources.getBoolean( com.android.internal.R.bool.config_dozePickupGestureEnabled)).thenReturn(false); DozeSensors dozeSensors = new DozeSensors(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); for (TriggerSensor sensor : dozeSensors.mTriggerSensors) { // THEN lift to wake's TriggerSensor enabledBySettings is false if (sensor.mPulseReason == DozeLog.REASON_SENSOR_PICKUP) { assertFalse(sensor.enabledBySetting()); } } } @Test public void liftToWake_defaultSetting_configDefaultTrue() { // WHEN the default lift to wake gesture setting is true when(mResources.getBoolean( com.android.internal.R.bool.config_dozePickupGestureEnabled)).thenReturn(true); DozeSensors dozeSensors = new DozeSensors(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); for (TriggerSensor sensor : dozeSensors.mTriggerSensors) { // THEN lift to wake's TriggerSensor enabledBySettings is true if (sensor.mPulseReason == DozeLog.REASON_SENSOR_PICKUP) { assertTrue(sensor.enabledBySetting()); } } } private class TestableDozeSensors extends DozeSensors { TestableDozeSensors() { super(mSensorManager, mDozeParameters, super(mResources, mSensorManager, mDozeParameters, mAmbientDisplayConfiguration, mWakeLock, mCallback, mProxCallback, mDozeLog, mProximitySensor, mFakeSettings, mAuthController, mDevicePostureController, mUserTracker); Loading