Chromium Code Reviews| Index: blimp/client/core/android/java/src/org/chromium/blimp/core/settings/AboutBlimpPreferences.java |
| diff --git a/blimp/client/core/android/java/src/org/chromium/blimp/core/settings/AboutBlimpPreferences.java b/blimp/client/core/android/java/src/org/chromium/blimp/core/settings/AboutBlimpPreferences.java |
| index 156160410039f75e9d7096e3ee05d6726f4420a7..7788b01f8eb5c02a33fab61bd45d1e8a3c1a886f 100644 |
| --- a/blimp/client/core/android/java/src/org/chromium/blimp/core/settings/AboutBlimpPreferences.java |
| +++ b/blimp/client/core/android/java/src/org/chromium/blimp/core/settings/AboutBlimpPreferences.java |
| @@ -16,6 +16,7 @@ import android.preference.SwitchPreference; |
| import android.support.v7.app.AlertDialog; |
| import org.chromium.base.ContextUtils; |
| +import org.chromium.base.ThreadUtils; |
| import org.chromium.base.VisibleForTesting; |
| import org.chromium.base.annotations.CalledByNative; |
| import org.chromium.base.annotations.JNINamespace; |
| @@ -27,6 +28,7 @@ import org.chromium.components.sync.signin.ChromeSigninController; |
| */ |
| @JNINamespace("blimp::client") |
| public class AboutBlimpPreferences extends PreferenceFragment { |
| + private static final String PREF_ENGINE_INFO = "blimp_engine_ip"; |
|
David Trainor- moved to gerrit
2016/09/14 15:49:02
Change the string to info as well?
xingliu
2016/09/14 20:44:24
Done, there will be resource migration in next pat
|
| /** |
| * If this fragment is waiting for user sign in. |
| */ |
| @@ -72,15 +74,24 @@ public class AboutBlimpPreferences extends PreferenceFragment { |
| @Override |
| public void onCreate(Bundle savedInstanceState) { |
| super.onCreate(savedInstanceState); |
| - initializeNative(); |
| getActivity().setTitle(R.string.blimp_about_blimp_preferences); |
| - updateSettingPage(); |
| + |
| + PreferenceScreen screen = getPreferenceScreen(); |
| + if (screen != null) screen.removeAll(); |
| + addPreferencesFromResource(R.xml.blimp_preferences); |
| + |
| + setupBlimpSwitch(); |
| + setupAssignerPreferences(); |
| + |
| + // Initialize native layer must be called after Java loads the prefrences entries from xml |
| + // file. |
| + initializeNative(); |
| } |
| @Override |
| public void onResume() { |
| super.onResume(); |
| - updateSettingPage(); |
| + setupBlimpSwitch(); |
| } |
| @Override |
| @@ -89,16 +100,6 @@ public class AboutBlimpPreferences extends PreferenceFragment { |
| super.onDestroy(); |
| } |
| - // Reload the items in preferences list. |
| - private void updateSettingPage() { |
| - PreferenceScreen screen = getPreferenceScreen(); |
| - if (screen != null) screen.removeAll(); |
| - addPreferencesFromResource(R.xml.blimp_preferences); |
| - |
| - setupBlimpSwitch(); |
| - setupAssignerPreferences(); |
| - } |
| - |
| /** |
| * Setup the switch preference for Blimp. |
| */ |
| @@ -236,8 +237,7 @@ public class AboutBlimpPreferences extends PreferenceFragment { |
| @VisibleForTesting |
| @CalledByNative |
| protected void onSignedOut() { |
| - // If user signed out, turn off the switch. We also do a sign in state check on |
| - // {@link AboutBlimpPreferences#updateSettingPage()}. |
| + // If user signed out, turn off the switch. We also do a sign in state check in onResume. |
| final SwitchPreference pref = |
| (SwitchPreference) findPreference(PreferencesUtil.PREF_BLIMP_SWITCH); |
| pref.setChecked(false); |
| @@ -260,6 +260,20 @@ public class AboutBlimpPreferences extends PreferenceFragment { |
| } |
| } |
| + /** |
| + * Setup engine connection info. This entry is not persisted into shared preference. |
| + * @param engineInfo The engine IP address if connected to engine, or error string displayed to |
| + * the user. |
| + */ |
| + @CalledByNative |
| + private void setEngineInfo(String engineInfo) { |
| + ThreadUtils.assertOnUiThread(); |
| + |
| + Preference pref = findPreference(PREF_ENGINE_INFO); |
| + assert pref != null; |
| + pref.setSummary(engineInfo); |
| + } |
| + |
| @VisibleForTesting |
| protected void initializeNative() { |
| mNativeBlimpSettingsAndroid = nativeInit(); |