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:
Daisuke Miyakawa
2010-08-24 15:50:43 -07:00
parent a9f163744a
commit 0cc35e444b
7 changed files with 199 additions and 208 deletions

View File

@@ -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;