From 94db928d8cf5a69e8c2907fc33a6d656045f263d Mon Sep 17 00:00:00 2001 From: Mike Lockwood Date: Mon, 21 Sep 2009 22:29:25 -0400 Subject: [PATCH] PowerManager: Require proximity sensor value be less than Sensor.getMaximumRange() This allows us to support binary proximity sensors that only return 0.0 and 1.0 Change-Id: Ifaf3a4e6fc720cb246ac3558e3e733b4b612c95b Signed-off-by: Mike Lockwood --- services/java/com/android/server/PowerManagerService.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/services/java/com/android/server/PowerManagerService.java b/services/java/com/android/server/PowerManagerService.java index 9d2fc2700e5e1..b2e3a8ce22e07 100644 --- a/services/java/com/android/server/PowerManagerService.java +++ b/services/java/com/android/server/PowerManagerService.java @@ -2131,7 +2131,9 @@ class PowerManagerService extends IPowerManager.Stub long milliseconds = event.timestamp / 1000000; synchronized (mLocks) { float distance = event.values[0]; - if (distance >= 0.0 && distance < PROXIMITY_THRESHOLD) { + // compare against getMaximumRange to support sensors that only return 0 or 1 + if (distance >= 0.0 && distance < PROXIMITY_THRESHOLD && + distance < mProximitySensor.getMaximumRange()) { if (mSpew) { Log.d(TAG, "onSensorChanged: proximity active, distance: " + distance); }