Loading src/com/android/settings/BrightnessPreference.java +13 −12 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.os.Handler; import android.os.IPowerManager; import android.os.Parcel; import android.os.Parcelable; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; import android.preference.SeekBarDialogPreference; Loading @@ -37,6 +38,8 @@ import android.widget.SeekBar; public class BrightnessPreference extends SeekBarDialogPreference implements SeekBar.OnSeekBarChangeListener, CheckBox.OnCheckedChangeListener { private final int mScreenBrightnessMinimum; private final int mScreenBrightnessMaximum; private SeekBar mSeekBar; private CheckBox mCheckBox; Loading @@ -51,12 +54,6 @@ public class BrightnessPreference extends SeekBarDialogPreference implements private boolean mRestoredOldState; // Backlight range is from 0 - 255. Need to make sure that user // doesn't set the backlight to 0 and get stuck private int mScreenBrightnessDim = getContext().getResources().getInteger(com.android.internal.R.integer.config_screenBrightnessDim); private static final int MAXIMUM_BACKLIGHT = android.os.PowerManager.BRIGHTNESS_ON; private static final int SEEK_BAR_RANGE = 10000; private ContentObserver mBrightnessObserver = new ContentObserver(new Handler()) { Loading @@ -77,6 +74,10 @@ public class BrightnessPreference extends SeekBarDialogPreference implements public BrightnessPreference(Context context, AttributeSet attrs) { super(context, attrs); PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); mScreenBrightnessMinimum = pm.getMinimumScreenBrightnessSetting(); mScreenBrightnessMaximum = pm.getMaximumScreenBrightnessSetting(); mAutomaticAvailable = context.getResources().getBoolean( com.android.internal.R.bool.config_automatic_brightness_available); Loading Loading @@ -155,8 +156,8 @@ public class BrightnessPreference extends SeekBarDialogPreference implements } else { brightness = mCurBrightness; } brightness = (brightness - mScreenBrightnessDim) / (MAXIMUM_BACKLIGHT - mScreenBrightnessDim); brightness = (brightness - mScreenBrightnessMinimum) / (mScreenBrightnessMaximum - mScreenBrightnessMinimum); } return (int)(brightness*SEEK_BAR_RANGE); } Loading Loading @@ -218,7 +219,7 @@ public class BrightnessPreference extends SeekBarDialogPreference implements IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { power.setAutoBrightnessAdjustment(valf); power.setTemporaryScreenAutoBrightnessAdjustmentSettingOverride(valf); } if (write) { final ContentResolver resolver = getContext().getContentResolver(); Loading @@ -229,13 +230,13 @@ public class BrightnessPreference extends SeekBarDialogPreference implements } } } else { int range = (MAXIMUM_BACKLIGHT - mScreenBrightnessDim); brightness = (brightness*range)/SEEK_BAR_RANGE + mScreenBrightnessDim; int range = (mScreenBrightnessMaximum - mScreenBrightnessMinimum); brightness = (brightness * range)/SEEK_BAR_RANGE + mScreenBrightnessMinimum; try { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { power.setBacklightBrightness(brightness); power.setTemporaryScreenBrightnessSettingOverride(brightness); } if (write) { mCurBrightness = -1; Loading src/com/android/settings/widget/SettingsAppWidgetProvider.java +26 −32 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.net.wifi.WifiManager; import android.os.AsyncTask; import android.os.Handler; import android.os.IPowerManager; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; import android.provider.Settings; Loading Loading @@ -94,16 +95,10 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { R.drawable.appwidget_settings_ind_on_r_holo }; /** * Minimum and maximum brightnesses. Don't go to 0 since that makes the display unusable */ private static final int MINIMUM_BACKLIGHT = android.os.PowerManager.BRIGHTNESS_DIM + 10; private static final int MAXIMUM_BACKLIGHT = android.os.PowerManager.BRIGHTNESS_ON; private static final int DEFAULT_BACKLIGHT = (int) (android.os.PowerManager.BRIGHTNESS_ON * 0.4f); /** Minimum brightness at which the indicator is shown at half-full and ON */ private static final int HALF_BRIGHTNESS_THRESHOLD = (int) (0.3 * MAXIMUM_BACKLIGHT); private static final float HALF_BRIGHTNESS_THRESHOLD = 0.3f; /** Minimum brightness at which the indicator is shown at full */ private static final int FULL_BRIGHTNESS_THRESHOLD = (int) (0.8 * MAXIMUM_BACKLIGHT); private static final float FULL_BRIGHTNESS_THRESHOLD = 0.8f; private static final StateTracker sWifiState = new WifiStateTracker(); private static final StateTracker sBluetoothState = new BluetoothStateTracker(); Loading Loading @@ -684,11 +679,16 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { R.drawable.appwidget_settings_ind_on_r_holo); } else { final int brightness = getBrightness(context); final PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); // Set the icon if (brightness > FULL_BRIGHTNESS_THRESHOLD) { final int full = (int)(pm.getMaximumScreenBrightnessSetting() * FULL_BRIGHTNESS_THRESHOLD); final int half = (int)(pm.getMaximumScreenBrightnessSetting() * HALF_BRIGHTNESS_THRESHOLD); if (brightness > full) { views.setImageViewResource(R.id.img_brightness, R.drawable.ic_appwidget_settings_brightness_full_holo); } else if (brightness > HALF_BRIGHTNESS_THRESHOLD) { } else if (brightness > half) { views.setImageViewResource(R.id.img_brightness, R.drawable.ic_appwidget_settings_brightness_half_holo); } else { Loading @@ -696,7 +696,7 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { R.drawable.ic_appwidget_settings_brightness_off_holo); } // Set the ON state if (brightness > HALF_BRIGHTNESS_THRESHOLD) { if (brightness > half) { views.setImageViewResource(R.id.ind_brightness, R.drawable.appwidget_settings_ind_on_r_holo); } else { Loading Loading @@ -775,13 +775,9 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { */ private static int getBrightness(Context context) { try { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { int brightness = Settings.System.getInt(context.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS); return brightness; } } catch (Exception e) { } return 0; Loading @@ -795,13 +791,9 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { */ private static boolean getBrightnessMode(Context context) { try { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { int brightnessMode = Settings.System.getInt(context.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE); return brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; } } catch (Exception e) { Log.d(TAG, "getBrightnessMode: " + e); } Loading @@ -818,6 +810,8 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); ContentResolver cr = context.getContentResolver(); int brightness = Settings.System.getInt(cr, Settings.System.SCREEN_BRIGHTNESS); Loading @@ -832,15 +826,15 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { // Rotate AUTO -> MINIMUM -> DEFAULT -> MAXIMUM // Technically, not a toggle... if (brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) { brightness = MINIMUM_BACKLIGHT; brightness = pm.getMinimumScreenBrightnessSetting(); brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL; } else if (brightness < DEFAULT_BACKLIGHT) { brightness = DEFAULT_BACKLIGHT; } else if (brightness < MAXIMUM_BACKLIGHT) { brightness = MAXIMUM_BACKLIGHT; } else if (brightness < pm.getDefaultScreenBrightnessSetting()) { brightness = pm.getDefaultScreenBrightnessSetting(); } else if (brightness < pm.getMaximumScreenBrightnessSetting()) { brightness = pm.getMaximumScreenBrightnessSetting(); } else { brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; brightness = MINIMUM_BACKLIGHT; brightness = pm.getMinimumScreenBrightnessSetting(); } if (context.getResources().getBoolean( Loading @@ -854,7 +848,7 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL; } if (brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL) { power.setBacklightBrightness(brightness); power.setTemporaryScreenBrightnessSettingOverride(brightness); Settings.System.putInt(cr, Settings.System.SCREEN_BRIGHTNESS, brightness); } } Loading Loading
src/com/android/settings/BrightnessPreference.java +13 −12 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.os.Handler; import android.os.IPowerManager; import android.os.Parcel; import android.os.Parcelable; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; import android.preference.SeekBarDialogPreference; Loading @@ -37,6 +38,8 @@ import android.widget.SeekBar; public class BrightnessPreference extends SeekBarDialogPreference implements SeekBar.OnSeekBarChangeListener, CheckBox.OnCheckedChangeListener { private final int mScreenBrightnessMinimum; private final int mScreenBrightnessMaximum; private SeekBar mSeekBar; private CheckBox mCheckBox; Loading @@ -51,12 +54,6 @@ public class BrightnessPreference extends SeekBarDialogPreference implements private boolean mRestoredOldState; // Backlight range is from 0 - 255. Need to make sure that user // doesn't set the backlight to 0 and get stuck private int mScreenBrightnessDim = getContext().getResources().getInteger(com.android.internal.R.integer.config_screenBrightnessDim); private static final int MAXIMUM_BACKLIGHT = android.os.PowerManager.BRIGHTNESS_ON; private static final int SEEK_BAR_RANGE = 10000; private ContentObserver mBrightnessObserver = new ContentObserver(new Handler()) { Loading @@ -77,6 +74,10 @@ public class BrightnessPreference extends SeekBarDialogPreference implements public BrightnessPreference(Context context, AttributeSet attrs) { super(context, attrs); PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); mScreenBrightnessMinimum = pm.getMinimumScreenBrightnessSetting(); mScreenBrightnessMaximum = pm.getMaximumScreenBrightnessSetting(); mAutomaticAvailable = context.getResources().getBoolean( com.android.internal.R.bool.config_automatic_brightness_available); Loading Loading @@ -155,8 +156,8 @@ public class BrightnessPreference extends SeekBarDialogPreference implements } else { brightness = mCurBrightness; } brightness = (brightness - mScreenBrightnessDim) / (MAXIMUM_BACKLIGHT - mScreenBrightnessDim); brightness = (brightness - mScreenBrightnessMinimum) / (mScreenBrightnessMaximum - mScreenBrightnessMinimum); } return (int)(brightness*SEEK_BAR_RANGE); } Loading Loading @@ -218,7 +219,7 @@ public class BrightnessPreference extends SeekBarDialogPreference implements IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { power.setAutoBrightnessAdjustment(valf); power.setTemporaryScreenAutoBrightnessAdjustmentSettingOverride(valf); } if (write) { final ContentResolver resolver = getContext().getContentResolver(); Loading @@ -229,13 +230,13 @@ public class BrightnessPreference extends SeekBarDialogPreference implements } } } else { int range = (MAXIMUM_BACKLIGHT - mScreenBrightnessDim); brightness = (brightness*range)/SEEK_BAR_RANGE + mScreenBrightnessDim; int range = (mScreenBrightnessMaximum - mScreenBrightnessMinimum); brightness = (brightness * range)/SEEK_BAR_RANGE + mScreenBrightnessMinimum; try { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { power.setBacklightBrightness(brightness); power.setTemporaryScreenBrightnessSettingOverride(brightness); } if (write) { mCurBrightness = -1; Loading
src/com/android/settings/widget/SettingsAppWidgetProvider.java +26 −32 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.net.wifi.WifiManager; import android.os.AsyncTask; import android.os.Handler; import android.os.IPowerManager; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; import android.provider.Settings; Loading Loading @@ -94,16 +95,10 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { R.drawable.appwidget_settings_ind_on_r_holo }; /** * Minimum and maximum brightnesses. Don't go to 0 since that makes the display unusable */ private static final int MINIMUM_BACKLIGHT = android.os.PowerManager.BRIGHTNESS_DIM + 10; private static final int MAXIMUM_BACKLIGHT = android.os.PowerManager.BRIGHTNESS_ON; private static final int DEFAULT_BACKLIGHT = (int) (android.os.PowerManager.BRIGHTNESS_ON * 0.4f); /** Minimum brightness at which the indicator is shown at half-full and ON */ private static final int HALF_BRIGHTNESS_THRESHOLD = (int) (0.3 * MAXIMUM_BACKLIGHT); private static final float HALF_BRIGHTNESS_THRESHOLD = 0.3f; /** Minimum brightness at which the indicator is shown at full */ private static final int FULL_BRIGHTNESS_THRESHOLD = (int) (0.8 * MAXIMUM_BACKLIGHT); private static final float FULL_BRIGHTNESS_THRESHOLD = 0.8f; private static final StateTracker sWifiState = new WifiStateTracker(); private static final StateTracker sBluetoothState = new BluetoothStateTracker(); Loading Loading @@ -684,11 +679,16 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { R.drawable.appwidget_settings_ind_on_r_holo); } else { final int brightness = getBrightness(context); final PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); // Set the icon if (brightness > FULL_BRIGHTNESS_THRESHOLD) { final int full = (int)(pm.getMaximumScreenBrightnessSetting() * FULL_BRIGHTNESS_THRESHOLD); final int half = (int)(pm.getMaximumScreenBrightnessSetting() * HALF_BRIGHTNESS_THRESHOLD); if (brightness > full) { views.setImageViewResource(R.id.img_brightness, R.drawable.ic_appwidget_settings_brightness_full_holo); } else if (brightness > HALF_BRIGHTNESS_THRESHOLD) { } else if (brightness > half) { views.setImageViewResource(R.id.img_brightness, R.drawable.ic_appwidget_settings_brightness_half_holo); } else { Loading @@ -696,7 +696,7 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { R.drawable.ic_appwidget_settings_brightness_off_holo); } // Set the ON state if (brightness > HALF_BRIGHTNESS_THRESHOLD) { if (brightness > half) { views.setImageViewResource(R.id.ind_brightness, R.drawable.appwidget_settings_ind_on_r_holo); } else { Loading Loading @@ -775,13 +775,9 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { */ private static int getBrightness(Context context) { try { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { int brightness = Settings.System.getInt(context.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS); return brightness; } } catch (Exception e) { } return 0; Loading @@ -795,13 +791,9 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { */ private static boolean getBrightnessMode(Context context) { try { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { int brightnessMode = Settings.System.getInt(context.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE); return brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; } } catch (Exception e) { Log.d(TAG, "getBrightnessMode: " + e); } Loading @@ -818,6 +810,8 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { IPowerManager power = IPowerManager.Stub.asInterface( ServiceManager.getService("power")); if (power != null) { PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); ContentResolver cr = context.getContentResolver(); int brightness = Settings.System.getInt(cr, Settings.System.SCREEN_BRIGHTNESS); Loading @@ -832,15 +826,15 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { // Rotate AUTO -> MINIMUM -> DEFAULT -> MAXIMUM // Technically, not a toggle... if (brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) { brightness = MINIMUM_BACKLIGHT; brightness = pm.getMinimumScreenBrightnessSetting(); brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL; } else if (brightness < DEFAULT_BACKLIGHT) { brightness = DEFAULT_BACKLIGHT; } else if (brightness < MAXIMUM_BACKLIGHT) { brightness = MAXIMUM_BACKLIGHT; } else if (brightness < pm.getDefaultScreenBrightnessSetting()) { brightness = pm.getDefaultScreenBrightnessSetting(); } else if (brightness < pm.getMaximumScreenBrightnessSetting()) { brightness = pm.getMaximumScreenBrightnessSetting(); } else { brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; brightness = MINIMUM_BACKLIGHT; brightness = pm.getMinimumScreenBrightnessSetting(); } if (context.getResources().getBoolean( Loading @@ -854,7 +848,7 @@ public class SettingsAppWidgetProvider extends AppWidgetProvider { brightnessMode = Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL; } if (brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL) { power.setBacklightBrightness(brightness); power.setTemporaryScreenBrightnessSettingOverride(brightness); Settings.System.putInt(cr, Settings.System.SCREEN_BRIGHTNESS, brightness); } } Loading