summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/UserDictionarySettings.java
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-02-13 12:57:53 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-02-13 12:57:53 -0800
commitb9f5851434b568fa427613fbc00e0b4cf9e15132 (patch)
treec82cbd53e469ea82e705c8724f23e733f7e2c655 /src/com/android/settings/UserDictionarySettings.java
parent1feaa85791b3b5cc66a16142afc2259a2356bc9e (diff)
downloadpackages_apps_Settings-b9f5851434b568fa427613fbc00e0b4cf9e15132.zip
packages_apps_Settings-b9f5851434b568fa427613fbc00e0b4cf9e15132.tar.gz
packages_apps_Settings-b9f5851434b568fa427613fbc00e0b4cf9e15132.tar.bz2
auto import from //branches/cupcake/...@131421
Diffstat (limited to 'src/com/android/settings/UserDictionarySettings.java')
-rw-r--r--src/com/android/settings/UserDictionarySettings.java23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/com/android/settings/UserDictionarySettings.java b/src/com/android/settings/UserDictionarySettings.java
index 8b86a6b..89d5279 100644
--- a/src/com/android/settings/UserDictionarySettings.java
+++ b/src/com/android/settings/UserDictionarySettings.java
@@ -44,6 +44,7 @@ import java.util.Locale;
public class UserDictionarySettings extends ListActivity {
private static final String INSTANCE_KEY_DIALOG_EDITING_WORD = "DIALOG_EDITING_WORD";
+ private static final String INSTANCE_KEY_ADDED_WORD = "DIALOG_ADDED_WORD";
private static final String[] QUERY_PROJECTION = {
UserDictionary.Words._ID, UserDictionary.Words.WORD
@@ -70,6 +71,9 @@ public class UserDictionarySettings extends ListActivity {
private Cursor mCursor;
+ private boolean mAddedWordAlready;
+ private boolean mAutoReturn;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -85,15 +89,17 @@ public class UserDictionarySettings extends ListActivity {
ListView listView = getListView();
listView.setFastScrollEnabled(true);
listView.setEmptyView(emptyView);
-
+
registerForContextMenu(listView);
}
@Override
protected void onResume() {
super.onResume();
- if (getIntent().getAction().equals("com.android.settings.USER_DICTIONARY_INSERT")) {
+ if (!mAddedWordAlready
+ && getIntent().getAction().equals("com.android.settings.USER_DICTIONARY_INSERT")) {
String word = getIntent().getStringExtra(EXTRA_WORD);
+ mAutoReturn = true;
if (word != null) {
showAddOrEditDialog(word);
}
@@ -103,12 +109,14 @@ public class UserDictionarySettings extends ListActivity {
protected void onRestoreInstanceState(Bundle state) {
super.onRestoreInstanceState(state);
mDialogEditingWord = state.getString(INSTANCE_KEY_DIALOG_EDITING_WORD);
+ mAddedWordAlready = state.getBoolean(INSTANCE_KEY_ADDED_WORD, false);
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString(INSTANCE_KEY_DIALOG_EDITING_WORD, mDialogEditingWord);
+ outState.putBoolean(INSTANCE_KEY_ADDED_WORD, mAddedWordAlready);
}
private Cursor createCursor() {
@@ -196,9 +204,13 @@ public class UserDictionarySettings extends ListActivity {
.setView(content)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
- onAddOrEditFinished(editText.getText().toString());
+ onAddOrEditFinished(editText.getText().toString());
+ if (mAutoReturn) finish();
+ }})
+ .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which) {
+ if (mAutoReturn) finish();
}})
- .setNegativeButton(android.R.string.cancel, null)
.create();
}
@@ -220,8 +232,9 @@ public class UserDictionarySettings extends ListActivity {
// TODO: present UI for picking whether to add word to all locales, or current.
UserDictionary.Words.addWord(this, word.toString(),
- 128, UserDictionary.Words.LOCALE_TYPE_ALL);
+ 250, UserDictionary.Words.LOCALE_TYPE_ALL);
mCursor.requery();
+ mAddedWordAlready = true;
}
private void deleteWord(String word) {