Loading packages/SystemUI/src/com/android/systemui/doze/DozeSensors.java +24 −9 Original line number Diff line number Diff line Loading @@ -183,7 +183,8 @@ public class DozeSensors { mSensorManager.getDefaultSensor(Sensor.TYPE_SIGNIFICANT_MOTION), null /* setting */, dozeParameters.getPulseOnSigMotion(), DozeLog.PULSE_REASON_SENSOR_SIGMOTION, false /* touchCoords */, DozeLog.PULSE_REASON_SENSOR_SIGMOTION, false /* touchCoords */, false /* touchscreen */), new TriggerSensor( mSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE), Loading @@ -193,7 +194,8 @@ public class DozeSensors { DozeLog.REASON_SENSOR_PICKUP, false /* touchCoords */, false /* touchscreen */, false /* ignoresSetting */, false /* requires prox */), false /* requires prox */, true /* immediatelyReRegister */), new TriggerSensor( findSensor(config.doubleTapSensorType()), Settings.Secure.DOZE_DOUBLE_TAP_GESTURE, Loading @@ -211,6 +213,7 @@ public class DozeSensors { true /* touchscreen */, false /* ignoresSetting */, dozeParameters.singleTapUsesProx(mDevicePosture) /* requiresProx */, true /* immediatelyReRegister */, mDevicePosture), new TriggerSensor( findSensor(config.longPressSensorType()), Loading @@ -221,7 +224,8 @@ public class DozeSensors { true /* reports touch coordinates */, true /* touchscreen */, false /* ignoresSetting */, dozeParameters.longPressUsesProx() /* requiresProx */), dozeParameters.longPressUsesProx() /* requiresProx */, true /* immediatelyReRegister */), new TriggerSensor( findSensor(config.udfpsLongPressSensorType()), "doze_pulse_on_auth", Loading @@ -231,7 +235,8 @@ public class DozeSensors { true /* reports touch coordinates */, true /* touchscreen */, false /* ignoresSetting */, dozeParameters.longPressUsesProx()), dozeParameters.longPressUsesProx(), false /* immediatelyReRegister */), new PluginSensor( new SensorManagerPlugin.Sensor(TYPE_WAKE_DISPLAY), Settings.Secure.DOZE_WAKE_DISPLAY_GESTURE, Loading @@ -257,7 +262,8 @@ public class DozeSensors { false /* requiresTouchCoordinates */, false /* requiresTouchscreen */, false /* ignoresSetting */, false /* requiresProx */), false /* requiresProx */, true /* immediatelyReRegister */), }; setProxListening(false); // Don't immediately start listening when we register. mProximitySensor.register( Loading Loading @@ -493,6 +499,10 @@ public class DozeSensors { private final boolean mRequiresTouchscreen; private final boolean mRequiresProx; // Whether to immediately re-register this sensor after the sensor is triggered. // If false, the sensor registration will be updated on the next AOD state transition. private final boolean mImmediatelyReRegister; protected boolean mRequested; protected boolean mRegistered; protected boolean mDisabled; Loading @@ -516,7 +526,8 @@ public class DozeSensors { reportsTouchCoordinates, requiresTouchscreen, false /* ignoresSetting */, false /* requiresProx */ false /* requiresProx */, true /* immediatelyReRegister */ ); } Loading @@ -529,7 +540,8 @@ public class DozeSensors { boolean reportsTouchCoordinates, boolean requiresTouchscreen, boolean ignoresSetting, boolean requiresProx boolean requiresProx, boolean immediatelyReRegister ) { this( new Sensor[]{ sensor }, Loading @@ -541,6 +553,7 @@ public class DozeSensors { requiresTouchscreen, ignoresSetting, requiresProx, immediatelyReRegister, DevicePostureController.DEVICE_POSTURE_UNKNOWN ); } Loading @@ -555,6 +568,7 @@ public class DozeSensors { boolean requiresTouchscreen, boolean ignoresSetting, boolean requiresProx, boolean immediatelyReRegister, @DevicePostureController.DevicePostureInt int posture ) { mSensors = sensors; Loading @@ -567,6 +581,7 @@ public class DozeSensors { mIgnoresSetting = ignoresSetting; mRequiresProx = requiresProx; mPosture = posture; mImmediatelyReRegister = immediatelyReRegister; } /** Loading Loading @@ -702,8 +717,8 @@ public class DozeSensors { screenY = event.values[1]; } mSensorCallback.onSensorPulse(mPulseReason, screenX, screenY, event.values); if (!mRegistered) { updateListening(); // reregister, this sensor only fires once if (!mRegistered && mImmediatelyReRegister) { updateListening(); } })); } Loading packages/SystemUI/tests/src/com/android/systemui/doze/DozeSensorsTest.java +6 −3 Original line number Diff line number Diff line Loading @@ -461,7 +461,8 @@ public class DozeSensorsTest extends SysuiTestCase { /* reportsTouchCoordinate*/ false, /* requiresTouchscreen */ false, /* ignoresSetting */ false, requiresTouchScreen); requiresTouchScreen, /* immediatelyReRegister */ true); } public TriggerSensor createDozeSensor( Loading @@ -477,7 +478,8 @@ public class DozeSensorsTest extends SysuiTestCase { /* reportsTouchCoordinate*/ false, /* requiresTouchscreen */ false, /* ignoresSetting */ false, /* requiresTouchScreen */false); /* requiresTouchScreen */ false, /* immediatelyReRegister*/ true); } /** Loading @@ -493,6 +495,7 @@ public class DozeSensorsTest extends SysuiTestCase { /* requiresTouchscreen */ false, /* ignoresSetting */ true, /* requiresProx */ false, /* immediatelyReRegister */ true, posture); } Loading Loading
packages/SystemUI/src/com/android/systemui/doze/DozeSensors.java +24 −9 Original line number Diff line number Diff line Loading @@ -183,7 +183,8 @@ public class DozeSensors { mSensorManager.getDefaultSensor(Sensor.TYPE_SIGNIFICANT_MOTION), null /* setting */, dozeParameters.getPulseOnSigMotion(), DozeLog.PULSE_REASON_SENSOR_SIGMOTION, false /* touchCoords */, DozeLog.PULSE_REASON_SENSOR_SIGMOTION, false /* touchCoords */, false /* touchscreen */), new TriggerSensor( mSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE), Loading @@ -193,7 +194,8 @@ public class DozeSensors { DozeLog.REASON_SENSOR_PICKUP, false /* touchCoords */, false /* touchscreen */, false /* ignoresSetting */, false /* requires prox */), false /* requires prox */, true /* immediatelyReRegister */), new TriggerSensor( findSensor(config.doubleTapSensorType()), Settings.Secure.DOZE_DOUBLE_TAP_GESTURE, Loading @@ -211,6 +213,7 @@ public class DozeSensors { true /* touchscreen */, false /* ignoresSetting */, dozeParameters.singleTapUsesProx(mDevicePosture) /* requiresProx */, true /* immediatelyReRegister */, mDevicePosture), new TriggerSensor( findSensor(config.longPressSensorType()), Loading @@ -221,7 +224,8 @@ public class DozeSensors { true /* reports touch coordinates */, true /* touchscreen */, false /* ignoresSetting */, dozeParameters.longPressUsesProx() /* requiresProx */), dozeParameters.longPressUsesProx() /* requiresProx */, true /* immediatelyReRegister */), new TriggerSensor( findSensor(config.udfpsLongPressSensorType()), "doze_pulse_on_auth", Loading @@ -231,7 +235,8 @@ public class DozeSensors { true /* reports touch coordinates */, true /* touchscreen */, false /* ignoresSetting */, dozeParameters.longPressUsesProx()), dozeParameters.longPressUsesProx(), false /* immediatelyReRegister */), new PluginSensor( new SensorManagerPlugin.Sensor(TYPE_WAKE_DISPLAY), Settings.Secure.DOZE_WAKE_DISPLAY_GESTURE, Loading @@ -257,7 +262,8 @@ public class DozeSensors { false /* requiresTouchCoordinates */, false /* requiresTouchscreen */, false /* ignoresSetting */, false /* requiresProx */), false /* requiresProx */, true /* immediatelyReRegister */), }; setProxListening(false); // Don't immediately start listening when we register. mProximitySensor.register( Loading Loading @@ -493,6 +499,10 @@ public class DozeSensors { private final boolean mRequiresTouchscreen; private final boolean mRequiresProx; // Whether to immediately re-register this sensor after the sensor is triggered. // If false, the sensor registration will be updated on the next AOD state transition. private final boolean mImmediatelyReRegister; protected boolean mRequested; protected boolean mRegistered; protected boolean mDisabled; Loading @@ -516,7 +526,8 @@ public class DozeSensors { reportsTouchCoordinates, requiresTouchscreen, false /* ignoresSetting */, false /* requiresProx */ false /* requiresProx */, true /* immediatelyReRegister */ ); } Loading @@ -529,7 +540,8 @@ public class DozeSensors { boolean reportsTouchCoordinates, boolean requiresTouchscreen, boolean ignoresSetting, boolean requiresProx boolean requiresProx, boolean immediatelyReRegister ) { this( new Sensor[]{ sensor }, Loading @@ -541,6 +553,7 @@ public class DozeSensors { requiresTouchscreen, ignoresSetting, requiresProx, immediatelyReRegister, DevicePostureController.DEVICE_POSTURE_UNKNOWN ); } Loading @@ -555,6 +568,7 @@ public class DozeSensors { boolean requiresTouchscreen, boolean ignoresSetting, boolean requiresProx, boolean immediatelyReRegister, @DevicePostureController.DevicePostureInt int posture ) { mSensors = sensors; Loading @@ -567,6 +581,7 @@ public class DozeSensors { mIgnoresSetting = ignoresSetting; mRequiresProx = requiresProx; mPosture = posture; mImmediatelyReRegister = immediatelyReRegister; } /** Loading Loading @@ -702,8 +717,8 @@ public class DozeSensors { screenY = event.values[1]; } mSensorCallback.onSensorPulse(mPulseReason, screenX, screenY, event.values); if (!mRegistered) { updateListening(); // reregister, this sensor only fires once if (!mRegistered && mImmediatelyReRegister) { updateListening(); } })); } Loading
packages/SystemUI/tests/src/com/android/systemui/doze/DozeSensorsTest.java +6 −3 Original line number Diff line number Diff line Loading @@ -461,7 +461,8 @@ public class DozeSensorsTest extends SysuiTestCase { /* reportsTouchCoordinate*/ false, /* requiresTouchscreen */ false, /* ignoresSetting */ false, requiresTouchScreen); requiresTouchScreen, /* immediatelyReRegister */ true); } public TriggerSensor createDozeSensor( Loading @@ -477,7 +478,8 @@ public class DozeSensorsTest extends SysuiTestCase { /* reportsTouchCoordinate*/ false, /* requiresTouchscreen */ false, /* ignoresSetting */ false, /* requiresTouchScreen */false); /* requiresTouchScreen */ false, /* immediatelyReRegister*/ true); } /** Loading @@ -493,6 +495,7 @@ public class DozeSensorsTest extends SysuiTestCase { /* requiresTouchscreen */ false, /* ignoresSetting */ true, /* requiresProx */ false, /* immediatelyReRegister */ true, posture); } Loading