Move backlight brightness from HardwareService to PowerManager
to prevent apps from changing the hardware behind its back.
Fixes b/2041941 Lock screen flashes the screen very bright before dimming
Change-Id: Ice757f7ae87902bdfb3634471cf44f020ebfaae4
Signed-off-by: Mike Lockwood <lockwood@android.com>
diff --git a/core/java/android/os/IHardwareService.aidl b/core/java/android/os/IHardwareService.aidl
index a6ef6473..594c0e8 100755
--- a/core/java/android/os/IHardwareService.aidl
+++ b/core/java/android/os/IHardwareService.aidl
@@ -28,12 +28,6 @@
boolean getFlashlightEnabled();
void setFlashlightEnabled(boolean on);
void enableCameraFlash(int milliseconds);
-
- // sets the brightness of the backlights (screen, keyboard, button) 0-255
- void setBacklights(int brightness);
-
- // enables or disables automatic brightness mode
- void setAutoBrightness(boolean on);
// for the phone
void setAttentionLight(boolean on);
diff --git a/core/java/android/os/IPowerManager.aidl b/core/java/android/os/IPowerManager.aidl
index 188e7ff..189335e 100644
--- a/core/java/android/os/IPowerManager.aidl
+++ b/core/java/android/os/IPowerManager.aidl
@@ -31,4 +31,10 @@
long getScreenOnTime();
void preventScreenOn(boolean prevent);
void setScreenBrightnessOverride(int brightness);
+
+ // sets the brightness of the backlights (screen, keyboard, button) 0-255
+ void setBacklightBrightness(int brightness);
+
+ // enables or disables automatic brightness mode
+ void setAutoBrightness(boolean on);
}
diff --git a/core/java/android/os/PowerManager.java b/core/java/android/os/PowerManager.java
index d5934102..11c96d2 100644
--- a/core/java/android/os/PowerManager.java
+++ b/core/java/android/os/PowerManager.java
@@ -379,6 +379,21 @@
}
}
+ /**
+ * sets the brightness of the backlights (screen, keyboard, button).
+ *
+ * @param brightness value from 0 to 255
+ *
+ * {@hide}
+ */
+ public void setBacklightBrightness(int brightness)
+ {
+ try {
+ mService.setBacklightBrightness(brightness);
+ } catch (RemoteException e) {
+ }
+ }
+
/**
* Returns the set of flags for {@link #newWakeLock(int, String) newWakeLock()}
* that are supported on the device.