diff options
author | Ricardo Cerqueira <cyanogenmod@cerqueira.org> | 2013-02-13 13:54:58 +0000 |
---|---|---|
committer | Ricardo Cerqueira <cyanogenmod@cerqueira.org> | 2013-02-15 00:07:30 +0000 |
commit | 20a2aaa9595e9ab958d27eb430af6560e24ba78c (patch) | |
tree | d810cc69bfa5db15a0d8833cfc73a4618a0eee73 /src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java | |
parent | f0ad93f3b99b9fd7c5191dc9fa91c59809d48870 (diff) | |
parent | 29a4eb7a33da12a957b3305138ada69140d8ab75 (diff) | |
download | packages_apps_settings-20a2aaa9595e9ab958d27eb430af6560e24ba78c.zip packages_apps_settings-20a2aaa9595e9ab958d27eb430af6560e24ba78c.tar.gz packages_apps_settings-20a2aaa9595e9ab958d27eb430af6560e24ba78c.tar.bz2 |
Merge commit 'android-4.2.2_r1' into mr1.1-staging
Conflicts:
AndroidManifest.xml
res/values-de/strings.xml
res/values-el/strings.xml
res/values-es/strings.xml
res/values-fi/strings.xml
res/values-hu/strings.xml
res/values-it/strings.xml
res/values-iw/strings.xml
res/values-nl/strings.xml
res/values-ru/strings.xml
res/values-zh-rCN/strings.xml
res/values/strings.xml
src/com/android/settings/ChooseLockGeneric.java
src/com/android/settings/ChooseLockPatternTutorial.java
src/com/android/settings/DeviceInfoSettings.java
src/com/android/settings/Settings.java
Change-Id: I275be467a401ad6dcc7966924358a5adb0773b75
Diffstat (limited to 'src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java')
-rw-r--r-- | src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java index e52ab7a..1bf68ce 100644 --- a/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java +++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java @@ -21,6 +21,9 @@ import com.android.settings.R; import android.app.Activity; import android.content.Intent; import android.os.Bundle; +import android.os.Message; +import android.os.Messenger; +import android.os.RemoteException; import android.view.View; public class UserDictionaryAddWordActivity extends Activity { @@ -30,6 +33,10 @@ public class UserDictionaryAddWordActivity extends Activity { public static final String MODE_EDIT_ACTION = "com.android.settings.USER_DICTIONARY_EDIT"; public static final String MODE_INSERT_ACTION = "com.android.settings.USER_DICTIONARY_INSERT"; + /* package */ static final int CODE_WORD_ADDED = 0; + /* package */ static final int CODE_CANCEL = 1; + /* package */ static final int CODE_ALREADY_PRESENT = 2; + private UserDictionaryAddWordContents mContents; @Override @@ -67,12 +74,31 @@ public class UserDictionaryAddWordActivity extends Activity { mContents.saveStateIntoBundle(outState); } + private void reportBackToCaller(final int resultCode, final Bundle result) { + final Intent senderIntent = getIntent(); + final Object listener = senderIntent.getExtras().get("listener"); + if (!(listener instanceof Messenger)) return; // This will work if listener is null too. + final Messenger messenger = (Messenger)listener; + + final Message m = Message.obtain(); + m.obj = result; + m.what = resultCode; + try { + messenger.send(m); + } catch (RemoteException e) { + // Couldn't report back, but there is nothing we can do to fix it + } + } + public void onClickCancel(final View v) { + reportBackToCaller(CODE_CANCEL, null); finish(); } public void onClickConfirm(final View v) { - mContents.apply(this); + final Bundle parameters = new Bundle(); + final int resultCode = mContents.apply(this, parameters); + reportBackToCaller(resultCode, parameters); finish(); } } |