Fix an NPE

It seems the user dictionary fragment does not tolerate being
called by name, and needs to be called only by action.

Bug: 5242122
Change-Id: I6b954db549b98d4d0076fdce8e00d336fc18b6e3
This commit is contained in:
Jean Chalard
2011-09-02 21:44:12 +09:00
parent eb913af2a6
commit 4e658ba969
2 changed files with 4 additions and 3 deletions

View File

@@ -141,8 +141,10 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
// not present or disabled. In this case we need to remove the preference.
getPreferenceScreen().removePreference(userDictionaryPreference);
} else if (localeList.size() <= 1) {
final Intent intent =
new Intent(UserDictionaryList.USER_DICTIONARY_SETTINGS_INTENT_ACTION);
userDictionaryPreference.setTitle(R.string.user_dict_single_settings_title);
userDictionaryPreference.setFragment(UserDictionarySettings.class.getName());
userDictionaryPreference.setIntent(intent);
// If the size of localeList is 0, we don't set the locale parameter in the
// extras. This will be interpreted by the UserDictionarySettings class as
// meaning "the current locale".

View File

@@ -35,7 +35,7 @@ import java.util.TreeSet;
public class UserDictionaryList extends SettingsPreferenceFragment {
private static final String USER_DICTIONARY_SETTINGS_INTENT_ACTION =
public static final String USER_DICTIONARY_SETTINGS_INTENT_ACTION =
"android.settings.USER_DICTIONARY_SETTINGS";
@Override
@@ -101,7 +101,6 @@ public class UserDictionaryList extends SettingsPreferenceFragment {
newPref.getExtras().putString("locale", locale);
}
newPref.setIntent(intent);
newPref.setFragment(UserDictionarySettings.class.getName());
return newPref;
}