Merge "AOD: Skip prox check if cached prox value available" into oc-dr1-dev
am: f96573f894
Change-Id: Ia89613aac856b104b32394d6040aa4694327cf55
This commit is contained in:
@@ -184,6 +184,13 @@ public class DozeSensors {
|
|||||||
pw.print("ProxSensor: "); pw.println(mProxSensor.toString());
|
pw.print("ProxSensor: "); pw.println(mProxSensor.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return true if prox is currently far, false if near or null if unknown.
|
||||||
|
*/
|
||||||
|
public Boolean isProximityCurrentlyFar() {
|
||||||
|
return mProxSensor.mCurrentlyFar;
|
||||||
|
}
|
||||||
|
|
||||||
private class ProxSensor implements SensorEventListener {
|
private class ProxSensor implements SensorEventListener {
|
||||||
|
|
||||||
static final long COOLDOWN_TRIGGER = 2 * 1000;
|
static final long COOLDOWN_TRIGGER = 2 * 1000;
|
||||||
|
|||||||
@@ -103,8 +103,11 @@ public class DozeTriggers implements DozeMachine.Part {
|
|||||||
private void proximityCheckThenCall(IntConsumer callback,
|
private void proximityCheckThenCall(IntConsumer callback,
|
||||||
boolean alreadyPerformedProxCheck,
|
boolean alreadyPerformedProxCheck,
|
||||||
int pulseReason) {
|
int pulseReason) {
|
||||||
|
Boolean cachedProxFar = mDozeSensors.isProximityCurrentlyFar();
|
||||||
if (alreadyPerformedProxCheck) {
|
if (alreadyPerformedProxCheck) {
|
||||||
callback.accept(ProximityCheck.RESULT_NOT_CHECKED);
|
callback.accept(ProximityCheck.RESULT_NOT_CHECKED);
|
||||||
|
} else if (cachedProxFar != null) {
|
||||||
|
callback.accept(cachedProxFar ? ProximityCheck.RESULT_FAR : ProximityCheck.RESULT_NEAR);
|
||||||
} else {
|
} else {
|
||||||
final long start = SystemClock.uptimeMillis();
|
final long start = SystemClock.uptimeMillis();
|
||||||
new ProximityCheck() {
|
new ProximityCheck() {
|
||||||
|
|||||||
Reference in New Issue
Block a user