diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/inputmethod/latin/LatinIMEBackupAgent.java | 31 | ||||
-rw-r--r-- | src/com/android/inputmethod/latin/LatinIMESettings.java | 21 |
2 files changed, 50 insertions, 2 deletions
diff --git a/src/com/android/inputmethod/latin/LatinIMEBackupAgent.java b/src/com/android/inputmethod/latin/LatinIMEBackupAgent.java new file mode 100644 index 000000000..c454f120e --- /dev/null +++ b/src/com/android/inputmethod/latin/LatinIMEBackupAgent.java @@ -0,0 +1,31 @@ +/* + * Copyright (C) 2009 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.android.inputmethod.latin; + +import android.backup.BackupHelperAgent; +import android.backup.SharedPreferencesBackupHelper; + +/** + * Backs up the Latin IME shared preferences. + */ +public class LatinIMEBackupAgent extends BackupHelperAgent { + + public void onCreate() { + addHelper("shared_pref", new SharedPreferencesBackupHelper(this, + "com.android.inputmethod.latin_preferences")); + } +} diff --git a/src/com/android/inputmethod/latin/LatinIMESettings.java b/src/com/android/inputmethod/latin/LatinIMESettings.java index e87c4a5a1..c8ea309e3 100644 --- a/src/com/android/inputmethod/latin/LatinIMESettings.java +++ b/src/com/android/inputmethod/latin/LatinIMESettings.java @@ -16,14 +16,17 @@ package com.android.inputmethod.latin; +import android.backup.BackupManager; +import android.content.SharedPreferences; import android.os.Bundle; import android.preference.CheckBoxPreference; import android.preference.PreferenceActivity; import android.preference.PreferenceGroup; import android.text.AutoText; -public class LatinIMESettings extends PreferenceActivity { - +public class LatinIMESettings extends PreferenceActivity + implements SharedPreferences.OnSharedPreferenceChangeListener { + private static final String QUICK_FIXES_KEY = "quick_fixes"; private static final String SHOW_SUGGESTIONS_KEY = "show_suggestions"; private static final String PREDICTION_SETTINGS_KEY = "prediction_settings"; @@ -37,6 +40,8 @@ public class LatinIMESettings extends PreferenceActivity { addPreferencesFromResource(R.xml.prefs); mQuickFixes = (CheckBoxPreference) findPreference(QUICK_FIXES_KEY); mShowSuggestions = (CheckBoxPreference) findPreference(SHOW_SUGGESTIONS_KEY); + getPreferenceManager().getSharedPreferences().registerOnSharedPreferenceChangeListener( + this); } @Override @@ -50,4 +55,16 @@ public class LatinIMESettings extends PreferenceActivity { mShowSuggestions.setDependency(QUICK_FIXES_KEY); } } + + @Override + protected void onDestroy() { + getPreferenceManager().getSharedPreferences().unregisterOnSharedPreferenceChangeListener( + this); + super.onDestroy(); + } + + public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, + String key) { + (new BackupManager(this)).dataChanged(); + } } |