summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Shuma <jshuma@google.com>2010-03-25 12:01:08 -0700
committerJim Shuma <jshuma@google.com>2010-03-25 12:01:08 -0700
commitd73944a1691f2299889ea6140f7fd256040d9e41 (patch)
tree45ad676b09e8a60c7ad4a5b2b1961b6bbed1e728
parent69ab334d6988eda70ba53618506d23ebf7d7b405 (diff)
downloadCalendar-d73944a1691f2299889ea6140f7fd256040d9e41.tar.gz
Migrate Vibrate setting from previous versions if needed
The Vibrate setting was getting properly interpreted in AlertService, but this was not visible from the preference screen. This change migrates the preference when the preference screen is brought up. Bug: 2535583 Change-Id: I63e8fdba108b37d6f31566cbe8eac81f5f1adee1
-rw-r--r--src/com/android/calendar/CalendarPreferenceActivity.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/com/android/calendar/CalendarPreferenceActivity.java b/src/com/android/calendar/CalendarPreferenceActivity.java
index b3adb596..e2f84e35 100644
--- a/src/com/android/calendar/CalendarPreferenceActivity.java
+++ b/src/com/android/calendar/CalendarPreferenceActivity.java
@@ -79,7 +79,9 @@ public class CalendarPreferenceActivity extends PreferenceActivity implements On
// Make sure to always use the same preferences file regardless of the package name
// we're running under
- getPreferenceManager().setSharedPreferencesName(SHARED_PREFS_NAME);
+ PreferenceManager preferenceManager = getPreferenceManager();
+ SharedPreferences sharedPreferences = getSharedPreferences(this);
+ preferenceManager.setSharedPreferencesName(SHARED_PREFS_NAME);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.preferences);
@@ -90,6 +92,15 @@ public class CalendarPreferenceActivity extends PreferenceActivity implements On
mVibrateWhen = (ListPreference) preferenceScreen.findPreference(KEY_ALERTS_VIBRATE_WHEN);
mRingtone = (RingtonePreference) preferenceScreen.findPreference(KEY_ALERTS_RINGTONE);
+ // If needed, migrate vibration setting from a previous version
+ if (!sharedPreferences.contains(KEY_ALERTS_VIBRATE_WHEN) &&
+ sharedPreferences.contains(KEY_ALERTS_VIBRATE)) {
+ int stringId = sharedPreferences.getBoolean(KEY_ALERTS_VIBRATE, false) ?
+ R.string.prefDefault_alerts_vibrate_true :
+ R.string.prefDefault_alerts_vibrate_false;
+ mVibrateWhen.setValue(getString(stringId));
+ }
+
try {
PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
findPreference(BUILD_VERSION).setSummary(packageInfo.versionName);