Fix a crash

Bug: 6137076
Change-Id: I05f9f72a2678d10d3400dab5fc71544276739dcf
main
Jean Chalard 2012-03-09 10:15:24 +09:00
parent 9c7db965cd
commit 7b77c683d7
1 changed files with 9 additions and 5 deletions

View File

@ -535,10 +535,6 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
registerReceiver(mReceiver, filter);
mVoiceProxy = VoiceProxy.init(this, prefs, mHandler);
final IntentFilter ringerModeFilter = new IntentFilter();
ringerModeFilter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION);
registerReceiver(mFeedbackManager, ringerModeFilter);
final IntentFilter packageFilter = new IntentFilter();
packageFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
packageFilter.addAction(Intent.ACTION_PACKAGE_REMOVED);
@ -551,11 +547,19 @@ 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());
mFeedbackManager = new AudioAndHapticFeedbackManager(this, mSettingsValues);
renewFeedbackReceiver();
resetContactsDictionary(null == mSuggest ? null : mSuggest.getContactsDictionary());
}