am f55aa972
: Merge change I01935be3 into eclair
Merge commit 'f55aa972f9911c6aafc9fbdb736bdec11e004542' into eclair-mr2 * commit 'f55aa972f9911c6aafc9fbdb736bdec11e004542': Remove PowerManager.setAutoBrightness()
This commit is contained in:
@ -34,7 +34,4 @@ interface IPowerManager
|
|||||||
|
|
||||||
// sets the brightness of the backlights (screen, keyboard, button) 0-255
|
// sets the brightness of the backlights (screen, keyboard, button) 0-255
|
||||||
void setBacklightBrightness(int brightness);
|
void setBacklightBrightness(int brightness);
|
||||||
|
|
||||||
// enables or disables automatic brightness mode
|
|
||||||
void setAutoBrightness(boolean on);
|
|
||||||
}
|
}
|
||||||
|
@ -1080,6 +1080,18 @@ public final class Settings {
|
|||||||
*/
|
*/
|
||||||
public static final String SCREEN_BRIGHTNESS_MODE = "screen_brightness_mode";
|
public static final String SCREEN_BRIGHTNESS_MODE = "screen_brightness_mode";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SCREEN_BRIGHTNESS_MODE value for manual mode.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public static final int SCREEN_BRIGHTNESS_MODE_MANUAL = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SCREEN_BRIGHTNESS_MODE value for manual mode.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Control whether the process CPU usage meter should be shown.
|
* Control whether the process CPU usage meter should be shown.
|
||||||
*/
|
*/
|
||||||
|
@ -45,7 +45,6 @@ public class SettingsHelper {
|
|||||||
|
|
||||||
private boolean mSilent;
|
private boolean mSilent;
|
||||||
private boolean mVibrate;
|
private boolean mVibrate;
|
||||||
private boolean mHasAutoBrightness;
|
|
||||||
|
|
||||||
public SettingsHelper(Context context) {
|
public SettingsHelper(Context context) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
@ -54,9 +53,6 @@ public class SettingsHelper {
|
|||||||
mContentService = ContentResolver.getContentService();
|
mContentService = ContentResolver.getContentService();
|
||||||
mPowerManager = IPowerManager.Stub.asInterface(
|
mPowerManager = IPowerManager.Stub.asInterface(
|
||||||
ServiceManager.getService("power"));
|
ServiceManager.getService("power"));
|
||||||
|
|
||||||
mHasAutoBrightness = context.getResources().getBoolean(
|
|
||||||
com.android.internal.R.bool.config_automatic_brightness_available);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -71,18 +67,6 @@ public class SettingsHelper {
|
|||||||
public boolean restoreValue(String name, String value) {
|
public boolean restoreValue(String name, String value) {
|
||||||
if (Settings.System.SCREEN_BRIGHTNESS.equals(name)) {
|
if (Settings.System.SCREEN_BRIGHTNESS.equals(name)) {
|
||||||
setBrightness(Integer.parseInt(value));
|
setBrightness(Integer.parseInt(value));
|
||||||
} else if (Settings.System.SCREEN_BRIGHTNESS_MODE.equals(name)) {
|
|
||||||
if (mHasAutoBrightness) {
|
|
||||||
// When setting auto-brightness, must reset the brightness afterwards
|
|
||||||
try {
|
|
||||||
int curBrightness = Settings.System.getInt(mContext.getContentResolver(),
|
|
||||||
Settings.System.SCREEN_BRIGHTNESS);
|
|
||||||
setAutoBrightness(Integer.parseInt(value) != 0);
|
|
||||||
setBrightness(curBrightness);
|
|
||||||
} catch (Settings.SettingNotFoundException e) {
|
|
||||||
// no brightness setting at all? weird. skip this then.
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if (Settings.System.SOUND_EFFECTS_ENABLED.equals(name)) {
|
} else if (Settings.System.SOUND_EFFECTS_ENABLED.equals(name)) {
|
||||||
setSoundEffects(Integer.parseInt(value) == 1);
|
setSoundEffects(Integer.parseInt(value) == 1);
|
||||||
} else if (Settings.Secure.LOCATION_PROVIDERS_ALLOWED.equals(name)) {
|
} else if (Settings.Secure.LOCATION_PROVIDERS_ALLOWED.equals(name)) {
|
||||||
@ -92,16 +76,6 @@ public class SettingsHelper {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setAutoBrightness(boolean value) {
|
|
||||||
if (mPowerManager != null) {
|
|
||||||
try {
|
|
||||||
mPowerManager.setAutoBrightness(value);
|
|
||||||
} catch (RemoteException e) {
|
|
||||||
// unable to reach the power manager; skip
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setGpsLocation(String value) {
|
private void setGpsLocation(String value) {
|
||||||
final String GPS = LocationManager.GPS_PROVIDER;
|
final String GPS = LocationManager.GPS_PROVIDER;
|
||||||
boolean enabled =
|
boolean enabled =
|
||||||
|
@ -53,6 +53,7 @@ import android.view.WindowManagerPolicy;
|
|||||||
import static android.provider.Settings.System.DIM_SCREEN;
|
import static android.provider.Settings.System.DIM_SCREEN;
|
||||||
import static android.provider.Settings.System.SCREEN_BRIGHTNESS;
|
import static android.provider.Settings.System.SCREEN_BRIGHTNESS;
|
||||||
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE;
|
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE;
|
||||||
|
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;
|
||||||
import static android.provider.Settings.System.SCREEN_OFF_TIMEOUT;
|
import static android.provider.Settings.System.SCREEN_OFF_TIMEOUT;
|
||||||
import static android.provider.Settings.System.STAY_ON_WHILE_PLUGGED_IN;
|
import static android.provider.Settings.System.STAY_ON_WHILE_PLUGGED_IN;
|
||||||
|
|
||||||
@ -199,6 +200,8 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
private long mScreenOnStartTime;
|
private long mScreenOnStartTime;
|
||||||
private boolean mPreventScreenOn;
|
private boolean mPreventScreenOn;
|
||||||
private int mScreenBrightnessOverride = -1;
|
private int mScreenBrightnessOverride = -1;
|
||||||
|
private boolean mHasHardwareAutoBrightness;
|
||||||
|
private boolean mAutoBrightessEnabled;
|
||||||
|
|
||||||
// Used when logging number and duration of touch-down cycles
|
// Used when logging number and duration of touch-down cycles
|
||||||
private long mTotalTouchDownTime;
|
private long mTotalTouchDownTime;
|
||||||
@ -344,6 +347,9 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
// DIM_SCREEN
|
// DIM_SCREEN
|
||||||
//mDimScreen = getInt(DIM_SCREEN) != 0;
|
//mDimScreen = getInt(DIM_SCREEN) != 0;
|
||||||
|
|
||||||
|
// SCREEN_BRIGHTNESS_MODE
|
||||||
|
setScreenBrightnessMode(getInt(SCREEN_BRIGHTNESS_MODE));
|
||||||
|
|
||||||
// recalculate everything
|
// recalculate everything
|
||||||
setScreenOffTimeoutsLocked();
|
setScreenOffTimeoutsLocked();
|
||||||
}
|
}
|
||||||
@ -415,12 +421,17 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
mScreenOffIntent = new Intent(Intent.ACTION_SCREEN_OFF);
|
mScreenOffIntent = new Intent(Intent.ACTION_SCREEN_OFF);
|
||||||
mScreenOffIntent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
|
mScreenOffIntent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
|
||||||
|
|
||||||
ContentResolver resolver = mContext.getContentResolver();
|
mHasHardwareAutoBrightness = mContext.getResources().getBoolean(
|
||||||
|
com.android.internal.R.bool.config_hardware_automatic_brightness_available);
|
||||||
|
|
||||||
|
ContentResolver resolver = mContext.getContentResolver();
|
||||||
Cursor settingsCursor = resolver.query(Settings.System.CONTENT_URI, null,
|
Cursor settingsCursor = resolver.query(Settings.System.CONTENT_URI, null,
|
||||||
"(" + Settings.System.NAME + "=?) or ("
|
"(" + Settings.System.NAME + "=?) or ("
|
||||||
|
+ Settings.System.NAME + "=?) or ("
|
||||||
+ Settings.System.NAME + "=?) or ("
|
+ Settings.System.NAME + "=?) or ("
|
||||||
+ Settings.System.NAME + "=?)",
|
+ Settings.System.NAME + "=?)",
|
||||||
new String[]{STAY_ON_WHILE_PLUGGED_IN, SCREEN_OFF_TIMEOUT, DIM_SCREEN},
|
new String[]{STAY_ON_WHILE_PLUGGED_IN, SCREEN_OFF_TIMEOUT, DIM_SCREEN,
|
||||||
|
SCREEN_BRIGHTNESS_MODE},
|
||||||
null);
|
null);
|
||||||
mSettings = new ContentQueryMap(settingsCursor, Settings.System.NAME, true, mHandler);
|
mSettings = new ContentQueryMap(settingsCursor, Settings.System.NAME, true, mHandler);
|
||||||
SettingsObserver settingsObserver = new SettingsObserver();
|
SettingsObserver settingsObserver = new SettingsObserver();
|
||||||
@ -444,10 +455,6 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
// turn everything on
|
// turn everything on
|
||||||
setPowerState(ALL_BRIGHT);
|
setPowerState(ALL_BRIGHT);
|
||||||
|
|
||||||
// set auto brightness mode to user setting
|
|
||||||
boolean brightnessMode = Settings.System.getInt(resolver, SCREEN_BRIGHTNESS_MODE, 1) != 0;
|
|
||||||
mHardware.setAutoBrightness_UNCHECKED(brightnessMode);
|
|
||||||
|
|
||||||
synchronized (mHandlerThread) {
|
synchronized (mHandlerThread) {
|
||||||
mInitComplete = true;
|
mInitComplete = true;
|
||||||
mHandlerThread.notifyAll();
|
mHandlerThread.notifyAll();
|
||||||
@ -1885,6 +1892,18 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setScreenBrightnessMode(int mode) {
|
||||||
|
mAutoBrightessEnabled = (mode == SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
|
||||||
|
|
||||||
|
if (mHasHardwareAutoBrightness) {
|
||||||
|
// When setting auto-brightness, must reset the brightness afterwards
|
||||||
|
mHardware.setAutoBrightness_UNCHECKED(mAutoBrightessEnabled);
|
||||||
|
setBacklightBrightness((int)mScreenBrightness.curValue);
|
||||||
|
} else {
|
||||||
|
// not yet implemented
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/** Sets the screen off timeouts:
|
/** Sets the screen off timeouts:
|
||||||
* mKeylightDelay
|
* mKeylightDelay
|
||||||
* mDimDelay
|
* mDimDelay
|
||||||
@ -2098,11 +2117,6 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAutoBrightness(boolean on) {
|
|
||||||
mContext.enforceCallingOrSelfPermission(android.Manifest.permission.DEVICE_POWER, null);
|
|
||||||
mHardware.setAutoBrightness_UNCHECKED(on);
|
|
||||||
}
|
|
||||||
|
|
||||||
private SensorManager getSensorManager() {
|
private SensorManager getSensorManager() {
|
||||||
if (mSensorManager == null) {
|
if (mSensorManager == null) {
|
||||||
mSensorManager = new SensorManager(mHandlerThread.getLooper());
|
mSensorManager = new SensorManager(mHandlerThread.getLooper());
|
||||||
|
Reference in New Issue
Block a user