Merge change Iae3ed706 into eclair
* changes:
Add new setting for notification light pulsing. Bug #2238250
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 7433a79..f7e55db 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -1409,6 +1409,13 @@
public static final String SHOW_WEB_SUGGESTIONS = "show_web_suggestions";
/**
+ * Whether the notification LED should repeatedly flash when a notification is
+ * pending. The value is boolean (1 or 0).
+ * @hide
+ */
+ public static final String NOTIFICATION_LIGHT_PULSE = "notification_light_pulse";
+
+ /**
* Settings to backup. This is here so that it's in the same place as the settings
* keys and easy to update.
* @hide
@@ -1462,7 +1469,8 @@
TTY_MODE,
SOUND_EFFECTS_ENABLED,
HAPTIC_FEEDBACK_ENABLED,
- SHOW_WEB_SUGGESTIONS
+ SHOW_WEB_SUGGESTIONS,
+ NOTIFICATION_LIGHT_PULSE
};
// Settings moved to Settings.Secure
diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml
index fbfe755..ab93d8c 100644
--- a/packages/SettingsProvider/res/values/defaults.xml
+++ b/packages/SettingsProvider/res/values/defaults.xml
@@ -48,4 +48,7 @@
<bool name="def_backup_enabled">false</bool>
<string name="def_backup_transport" translatable="false"></string>
+ <!-- Default value for whether or not to pulse the notification LED when there is a
+ pending notification -->
+ <bool name="def_notification_pulse">true</bool>
</resources>
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
index e25c648..1a64e20 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
@@ -71,7 +71,7 @@
// database gets upgraded properly. At a minimum, please confirm that 'upgradeVersion'
// is properly propagated through your change. Not doing so will result in a loss of user
// settings.
- private static final int DATABASE_VERSION = 42;
+ private static final int DATABASE_VERSION = 43;
private Context mContext;
@@ -521,6 +521,24 @@
upgradeVersion = 42;
}
+ if (upgradeVersion == 42) {
+ /*
+ * Initialize new notification pulse setting
+ */
+ db.beginTransaction();
+ try {
+ SQLiteStatement stmt = db.compileStatement("INSERT INTO system(name,value)"
+ + " VALUES(?,?);");
+ loadBooleanSetting(stmt, Settings.System.NOTIFICATION_LIGHT_PULSE,
+ R.bool.def_notification_pulse);
+ stmt.close();
+ db.setTransactionSuccessful();
+ } finally {
+ db.endTransaction();
+ }
+ upgradeVersion = 43;
+ }
+
if (upgradeVersion != currentVersion) {
Log.w(TAG, "Got stuck trying to upgrade from version " + upgradeVersion
+ ", must wipe the settings provider");
@@ -767,6 +785,8 @@
loadDefaultHapticSettings(stmt);
+ loadBooleanSetting(stmt, Settings.System.NOTIFICATION_LIGHT_PULSE,
+ R.bool.def_notification_pulse);
stmt.close();
}