summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/DisplaySettings.java
diff options
context:
space:
mode:
authorRicardo Cerqueira <cyanogenmod@cerqueira.org>2012-11-21 00:37:15 +0000
committerRicardo Cerqueira <cyanogenmod@cerqueira.org>2012-11-21 10:41:10 +0000
commit28413bb813a4b621f6575b85ef04ce7636490f92 (patch)
treea61fec5d83d7a1b9e6dacadf722b1fc458ac9a2d /src/com/android/settings/DisplaySettings.java
parent9f3e97cc06a145bd7bc8c8af15972eb813009329 (diff)
downloadpackages_apps_settings-28413bb813a4b621f6575b85ef04ce7636490f92.zip
packages_apps_settings-28413bb813a4b621f6575b85ef04ce7636490f92.tar.gz
packages_apps_settings-28413bb813a4b621f6575b85ef04ce7636490f92.tar.bz2
Add LED configuration support from mr0/10.0
Change-Id: I36cee9cc813bd0fc62c30c6e10c61bcd9a131bf6
Diffstat (limited to 'src/com/android/settings/DisplaySettings.java')
-rw-r--r--src/com/android/settings/DisplaySettings.java56
1 files changed, 38 insertions, 18 deletions
diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java
index fb839a7..633d2bb 100644
--- a/src/com/android/settings/DisplaySettings.java
+++ b/src/com/android/settings/DisplaySettings.java
@@ -61,6 +61,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
private static final String KEY_SCREEN_SAVER = "screensaver";
private static final String KEY_WIFI_DISPLAY = "wifi_display";
+ private static final String KEY_BATTERY_LIGHT = "battery_light";
private static final int DLG_GLOBAL_CHANGE_WARNING = 1;
@@ -68,7 +69,8 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
private CheckBoxPreference mAccelerometer;
private WarnedListPreference mFontSizePref;
- private CheckBoxPreference mNotificationPulse;
+ private PreferenceScreen mNotificationPulse;
+ private PreferenceScreen mBatteryPulse;
private final Configuration mCurConfig = new Configuration();
@@ -119,21 +121,26 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
mFontSizePref = (WarnedListPreference) findPreference(KEY_FONT_SIZE);
mFontSizePref.setOnPreferenceChangeListener(this);
mFontSizePref.setOnPreferenceClickListener(this);
- mNotificationPulse = (CheckBoxPreference) findPreference(KEY_NOTIFICATION_PULSE);
- if (mNotificationPulse != null
- && getResources().getBoolean(
- com.android.internal.R.bool.config_intrusiveNotificationLed) == false) {
- getPreferenceScreen().removePreference(mNotificationPulse);
- } else {
- try {
- mNotificationPulse.setChecked(Settings.System.getInt(resolver,
- Settings.System.NOTIFICATION_LIGHT_PULSE) == 1);
- mNotificationPulse.setOnPreferenceChangeListener(this);
- } catch (SettingNotFoundException snfe) {
- Log.e(TAG, Settings.System.NOTIFICATION_LIGHT_PULSE + " not found");
+ mNotificationPulse = (PreferenceScreen) findPreference(KEY_NOTIFICATION_PULSE);
+ if (mNotificationPulse != null) {
+ if (!getResources().getBoolean(com.android.internal.R.bool.config_intrusiveNotificationLed)) {
+ getPreferenceScreen().removePreference(mNotificationPulse);
+ } else {
+ updateLightPulseDescription();
+ }
+ }
+
+ mBatteryPulse = (PreferenceScreen) findPreference(KEY_BATTERY_LIGHT);
+ if (mBatteryPulse != null) {
+ if (getResources().getBoolean(
+ com.android.internal.R.bool.config_intrusiveBatteryLed) == false) {
+ getPreferenceScreen().removePreference(mBatteryPulse);
+ } else {
+ updateBatteryPulseDescription();
}
}
+
mDisplayManager = (DisplayManager)getActivity().getSystemService(
Context.DISPLAY_SERVICE);
mWifiDisplayStatus = mDisplayManager.getWifiDisplayStatus();
@@ -207,6 +214,24 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
screenTimeoutPreference.setEnabled(revisedEntries.size() > 0);
}
+ private void updateLightPulseDescription() {
+ if (Settings.System.getInt(getActivity().getContentResolver(),
+ Settings.System.NOTIFICATION_LIGHT_PULSE, 0) == 1) {
+ mNotificationPulse.setSummary(getString(R.string.notification_light_enabled));
+ } else {
+ mNotificationPulse.setSummary(getString(R.string.notification_light_disabled));
+ }
+ }
+
+ private void updateBatteryPulseDescription() {
+ if (Settings.System.getInt(getActivity().getContentResolver(),
+ Settings.System.BATTERY_LIGHT_ENABLED, 1) == 1) {
+ mBatteryPulse.setSummary(getString(R.string.notification_light_enabled));
+ } else {
+ mBatteryPulse.setSummary(getString(R.string.notification_light_disabled));
+ }
+ }
+
int floatToIndex(float val) {
String[] indices = getResources().getStringArray(R.array.entryvalues_font_size);
float lastVal = Float.parseFloat(indices[0]);
@@ -331,11 +356,6 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
if (preference == mAccelerometer) {
RotationPolicy.setRotationLockForAccessibility(
getActivity(), !mAccelerometer.isChecked());
- } else if (preference == mNotificationPulse) {
- boolean value = mNotificationPulse.isChecked();
- Settings.System.putInt(getContentResolver(), Settings.System.NOTIFICATION_LIGHT_PULSE,
- value ? 1 : 0);
- return true;
}
return super.onPreferenceTreeClick(preferenceScreen, preference);
}