Make LocalePicker Fragment.
The logic calling selectFirst() is removed as - There's no comment why it is needed. - Actually SetupWizard gets stack as that forces users to see WirelessSettings in SetupWizard. The other changes: - Move back LocalePickerFragment to LocalePicker. - Make <activity> for LocalePicker in AndroidManifest <activity-alias> - Add a short comment about how getComponent(), which should be a key for understanding how top-level settings work. - Modify LanguageSettings so that it corectly points LocalePicker as a fragment. Change-Id: I78d356e40af896ba1aab72fba12c90467371c7b0
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
@@ -29,6 +30,7 @@ import android.preference.PreferenceGroup;
|
||||
import android.preference.PreferenceScreen;
|
||||
import android.provider.Settings;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import android.view.inputmethod.InputMethodInfo;
|
||||
import android.view.inputmethod.InputMethodManager;
|
||||
|
||||
@@ -37,7 +39,8 @@ import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
||||
public class LanguageSettings extends SettingsPreferenceFragment {
|
||||
|
||||
private static final String TAG = LanguageSettings.class.getSimpleName();
|
||||
|
||||
private static final String KEY_PHONE_LANGUAGE = "phone_language";
|
||||
private static final String KEY_INPUT_METHOD = "input_method";
|
||||
|
||||
@@ -233,6 +236,15 @@ public class LanguageSettings extends SettingsPreferenceFragment {
|
||||
if (Utils.isMonkeyRunning()) {
|
||||
return false;
|
||||
}
|
||||
final String fragmentClass = preference.getFragment();
|
||||
if (fragmentClass != null) {
|
||||
final Activity activity = getActivity();
|
||||
if (activity instanceof com.android.settings.Settings) {
|
||||
return ((com.android.settings.Settings) activity).showFragment(preference);
|
||||
} else {
|
||||
Log.w(TAG, "Fragment is available while the parent is not Settings Activity.");
|
||||
}
|
||||
}
|
||||
|
||||
if (preference instanceof CheckBoxPreference) {
|
||||
final CheckBoxPreference chkPref = (CheckBoxPreference) preference;
|
||||
|
||||
Reference in New Issue
Block a user