diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index df409465d7e73..e826db9947204 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -1433,6 +1433,13 @@ public final class Settings {
*/
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.
@@ -1487,7 +1494,8 @@ public final class Settings {
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 fbfe75552f719..ab93d8c8e7eb7 100644
--- a/packages/SettingsProvider/res/values/defaults.xml
+++ b/packages/SettingsProvider/res/values/defaults.xml
@@ -48,4 +48,7 @@
false
+
+ true
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
index e25c6488be5d1..1a64e20b1c99b 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 @@ public class DatabaseHelper extends SQLiteOpenHelper {
// 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 @@ public class DatabaseHelper extends SQLiteOpenHelper {
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 @@ public class DatabaseHelper extends SQLiteOpenHelper {
loadDefaultHapticSettings(stmt);
+ loadBooleanSetting(stmt, Settings.System.NOTIFICATION_LIGHT_PULSE,
+ R.bool.def_notification_pulse);
stmt.close();
}