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) { |