Ambient: Re-register all trigger sensors if one fires am: 0288dcc825

am: 7157eb844a

Change-Id: I0c4d238f87d0a88c69d28a93bd6218f899a24a5a
This commit is contained in:
Adrian Roos
2016-10-06 21:33:30 +00:00
committed by android-build-merger

View File

@@ -60,6 +60,11 @@ public class DozeService extends DreamService {
private static final String ACTION_BASE = "com.android.systemui.doze";
private static final String PULSE_ACTION = ACTION_BASE + ".pulse";
/**
* If true, reregisters all trigger sensors when the screen turns off.
*/
private static final boolean REREGISTER_ALL_SENSORS_ON_SCREEN_OFF = true;
private final String mTag = String.format(TAG + ".%08x", hashCode());
private final Context mContext = this;
private final DozeParameters mDozeParameters = new DozeParameters(mContext);
@@ -272,6 +277,9 @@ public class DozeService extends DreamService {
public void onPulseFinished() {
if (mPulsing && mDreaming) {
mPulsing = false;
if (REREGISTER_ALL_SENSORS_ON_SCREEN_OFF) {
reregisterAllSensors();
}
turnDisplayOff();
}
mWakeLock.release(); // needs to be unconditional to balance acquire
@@ -308,6 +316,15 @@ public class DozeService extends DreamService {
listenForNotifications(listen);
}
private void reregisterAllSensors() {
for (TriggerSensor s : mSensors) {
s.setListening(false);
}
for (TriggerSensor s : mSensors) {
s.setListening(true);
}
}
private void listenForBroadcasts(boolean listen) {
if (listen) {
final IntentFilter filter = new IntentFilter(PULSE_ACTION);