| Index: chrome/android/java/src/org/chromium/chrome/browser/signin/AccountManagementFragment.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountManagementFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountManagementFragment.java
|
| index 2afda21da657cddb7bb8ef179305a0173a521899..3b615a48500ab14ed96bc111ce676965e69bacc6 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountManagementFragment.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/AccountManagementFragment.java
|
| @@ -118,8 +118,6 @@ public class AccountManagementFragment extends PreferenceFragment
|
| private ArrayList<Preference> mAccountsListPreferences = new ArrayList<Preference>();
|
| private Preference mPrimaryAccountPreference;
|
|
|
| - private boolean mSaveInstanceStateWasCalled;
|
| -
|
| private AccountManagementFragmentDelegate getDelegate() {
|
| return AccountManagementScreenHelper.getDelegate();
|
| }
|
| @@ -127,7 +125,6 @@ public class AccountManagementFragment extends PreferenceFragment
|
| @Override
|
| public void onCreate(Bundle savedState) {
|
| super.onCreate(savedState);
|
| - mSaveInstanceStateWasCalled = false;
|
|
|
| mGaiaServiceType = GAIA_SERVICE_TYPE_NONE;
|
| if (getArguments() != null) {
|
| @@ -160,12 +157,6 @@ public class AccountManagementFragment extends PreferenceFragment
|
| ProfileSyncService.get(getActivity()).removeSyncStateChangedListener(this);
|
| }
|
|
|
| - @Override
|
| - public void onSaveInstanceState(Bundle outState) {
|
| - super.onSaveInstanceState(outState);
|
| - mSaveInstanceStateWasCalled = true;
|
| - }
|
| -
|
| /**
|
| * Initiate fetching the user accounts data (images and the full name).
|
| * Fetched data will be sent to observers of ProfileDownloader.
|
| @@ -227,8 +218,8 @@ public class AccountManagementFragment extends PreferenceFragment
|
| signOutSwitch.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
|
| @Override
|
| public boolean onPreferenceChange(Preference preference, Object newValue) {
|
| + if (!isVisible() || !isResumed()) return false;
|
| if ((boolean) newValue) return true;
|
| - if (mSaveInstanceStateWasCalled) return false;
|
|
|
| if (ChromeSigninController.get(getActivity()).isSignedIn()
|
| && getSignOutAllowedPreferenceValue(getActivity())) {
|
| @@ -262,7 +253,7 @@ public class AccountManagementFragment extends PreferenceFragment
|
| addAccount.setOnPreferenceClickListener(new OnPreferenceClickListener() {
|
| @Override
|
| public boolean onPreferenceClick(Preference preference) {
|
| - if (mSaveInstanceStateWasCalled) return false;
|
| + if (!isVisible() || !isResumed()) return false;
|
|
|
| AccountManagementScreenHelper.logEvent(
|
| ProfileAccountManagementMetrics.ADD_ACCOUNT,
|
| @@ -296,7 +287,7 @@ public class AccountManagementFragment extends PreferenceFragment
|
| goIncognito.setOnPreferenceClickListener(new OnPreferenceClickListener() {
|
| @Override
|
| public boolean onPreferenceClick(Preference preference) {
|
| - if (mSaveInstanceStateWasCalled) return false;
|
| + if (!isVisible() || !isResumed()) return false;
|
| if (!PrefServiceBridge.getInstance().isIncognitoModeEnabled()) return false;
|
|
|
| AccountManagementFragmentDelegate delegate = getDelegate();
|
| @@ -402,7 +393,7 @@ public class AccountManagementFragment extends PreferenceFragment
|
| pref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
|
| @Override
|
| public boolean onPreferenceClick(Preference preference) {
|
| - if (mSaveInstanceStateWasCalled) return false;
|
| + if (!isVisible() || !isResumed()) return false;
|
|
|
| AccountManagementScreenHelper.logEvent(
|
| ProfileAccountManagementMetrics.CLICK_PRIMARY_ACCOUNT,
|
|
|