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: Ic4faa008357fd3d74225ba90f05801c5127fd8c0
Signed-off-by: Mike Lockwood <lockwood@android.com>
This commit is contained in:
Mike Lockwood
2009-09-15 14:39:47 -04:00
parent a096888f3c
commit cd03f5320d
3 changed files with 18 additions and 17 deletions

View File

@@ -18,7 +18,7 @@ package com.android.settings;
import android.content.Context;
import android.os.RemoteException;
import android.os.IHardwareService;
import android.os.IPowerManager;
import android.os.ServiceManager;
import android.preference.SeekBarPreference;
import android.provider.Settings;
@@ -130,10 +130,10 @@ public class BrightnessPreference extends SeekBarPreference implements
private void setBrightness(int brightness) {
try {
IHardwareService hardware = IHardwareService.Stub.asInterface(
ServiceManager.getService("hardware"));
if (hardware != null) {
hardware.setBacklights(brightness);
IPowerManager power = IPowerManager.Stub.asInterface(
ServiceManager.getService("power"));
if (power != null) {
power.setBacklightBrightness(brightness);
}
} catch (RemoteException doe) {
@@ -147,10 +147,10 @@ public class BrightnessPreference extends SeekBarPreference implements
mSeekBar.setVisibility(View.VISIBLE);
}
try {
IHardwareService hardware = IHardwareService.Stub.asInterface(
ServiceManager.getService("hardware"));
if (hardware != null) {
hardware.setAutoBrightness(automatic != 0);
IPowerManager power = IPowerManager.Stub.asInterface(
ServiceManager.getService("power"));
if (power != null) {
power.setAutoBrightness(automatic != 0);
}
} catch (RemoteException doe) {
}