diff options
author | 2012-03-09 11:00:23 +0900 | |
---|---|---|
committer | 2012-03-09 11:00:23 +0900 | |
commit | 21af2f40c59de3ea5ec183aa278406bf28d5e3bd (patch) | |
tree | 5c5072805c18eff1c72ed19b78e899d1b4e44a3f /java/src/com/android/inputmethod/latin/LatinIME.java | |
parent | 7b77c683d7de842ede62800125f6ba2370e86a19 (diff) | |
download | latinime-21af2f40c59de3ea5ec183aa278406bf28d5e3bd.tar.gz latinime-21af2f40c59de3ea5ec183aa278406bf28d5e3bd.tar.xz latinime-21af2f40c59de3ea5ec183aa278406bf28d5e3bd.zip |
Merge broadcast receivers again
It's probably simpler not to have registers dance around,
and just message the feedback manager when the audio event
happens.
Change-Id: Id0710ed102d10d01f1af93ad8cb660653bb3a9f8
Diffstat (limited to 'java/src/com/android/inputmethod/latin/LatinIME.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinIME.java | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index ca38cdeec..73a96895f 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -532,6 +532,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar // Also receive installation and removal of a dictionary pack. final IntentFilter filter = new IntentFilter(); filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); + filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION); registerReceiver(mReceiver, filter); mVoiceProxy = VoiceProxy.init(this, prefs, mHandler); @@ -547,19 +548,11 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar registerReceiver(mDictionaryPackInstallReceiver, newDictFilter); } - private void renewFeedbackReceiver() { - if (null != mFeedbackManager) unregisterReceiver(mFeedbackManager); - mFeedbackManager = new AudioAndHapticFeedbackManager(this, mSettingsValues); - final IntentFilter ringerModeFilter = new IntentFilter(); - ringerModeFilter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION); - registerReceiver(mFeedbackManager, ringerModeFilter); - } - // Has to be package-visible for unit tests /* package */ void loadSettings() { if (null == mPrefs) mPrefs = PreferenceManager.getDefaultSharedPreferences(this); mSettingsValues = new SettingsValues(mPrefs, this, mSubtypeSwitcher.getInputLocaleStr()); - renewFeedbackReceiver(); + mFeedbackManager = new AudioAndHapticFeedbackManager(this, mSettingsValues); resetContactsDictionary(null == mSuggest ? null : mSuggest.getContactsDictionary()); } @@ -648,7 +641,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar mSuggest = null; } unregisterReceiver(mReceiver); - unregisterReceiver(mFeedbackManager); unregisterReceiver(mDictionaryPackInstallReceiver); mVoiceProxy.destroy(); LatinImeLogger.commit(); @@ -2356,6 +2348,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar final String action = intent.getAction(); if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) { mSubtypeSwitcher.onNetworkStateChanged(intent); + } else if (action.equals(AudioManager.RINGER_MODE_CHANGED_ACTION)) { + mFeedbackManager.onRingerModeChanged(); } } }; |