| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
|
| index ed53d7608c2471f304c93c5f52d6656a01d40cfe..80142691f15cac050f1a3c2600216cf5dc258356 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
|
| @@ -11,6 +11,7 @@ import android.os.Handler;
|
| import android.preference.Preference;
|
| import android.preference.PreferenceFragment;
|
|
|
| +import org.chromium.base.ApiCompatibilityUtils;
|
| import org.chromium.base.VisibleForTesting;
|
| import org.chromium.blimp_public.BlimpClientContext;
|
| import org.chromium.chrome.R;
|
| @@ -55,6 +56,7 @@ public class MainPreferences extends PreferenceFragment implements SignInStateOb
|
| private ManagedPreferenceDelegate mManagedPreferenceDelegate;
|
|
|
| private boolean mShowSearchEnginePicker;
|
| + private boolean mIsDemoUser;
|
|
|
| public MainPreferences() {
|
| setHasOptionsMenu(true);
|
| @@ -69,17 +71,21 @@ public class MainPreferences extends PreferenceFragment implements SignInStateOb
|
| && getArguments().getBoolean(EXTRA_SHOW_SEARCH_ENGINE_PICKER, false)) {
|
| mShowSearchEnginePicker = true;
|
| }
|
| +
|
| + mIsDemoUser = ApiCompatibilityUtils.isDemoUser(getActivity());
|
| }
|
|
|
| @Override
|
| public void onResume() {
|
| super.onResume();
|
| - SigninManager.get(getActivity()).addSignInStateObserver(this);
|
| -
|
| // updatePreferences() must be called before setupSignInPref as updatePreferences loads
|
| // the SignInPreference.
|
| updatePreferences();
|
| - setupSignInPref();
|
| +
|
| + if (!mIsDemoUser) {
|
| + SigninManager.get(getActivity()).addSignInStateObserver(this);
|
| + setupSignInPref();
|
| + }
|
|
|
| if (mShowSearchEnginePicker) {
|
| mShowSearchEnginePicker = false;
|
| @@ -90,8 +96,10 @@ public class MainPreferences extends PreferenceFragment implements SignInStateOb
|
| @Override
|
| public void onPause() {
|
| super.onPause();
|
| - SigninManager.get(getActivity()).removeSignInStateObserver(this);
|
| - clearSignInPref();
|
| + if (!mIsDemoUser) {
|
| + SigninManager.get(getActivity()).removeSignInStateObserver(this);
|
| + clearSignInPref();
|
| + }
|
| }
|
|
|
| @Override
|
| @@ -160,6 +168,10 @@ public class MainPreferences extends PreferenceFragment implements SignInStateOb
|
| } else {
|
| getPreferenceScreen().removePreference(dataReduction);
|
| }
|
| +
|
| + if (mIsDemoUser) {
|
| + getPreferenceScreen().removePreference(findPreference(PREF_SIGN_IN));
|
| + }
|
| }
|
|
|
| private void setOnOffSummary(Preference pref, boolean isOn) {
|
|
|