When opening account settings, divert to AccountSecurity if needed
b/12843721 Change-Id: Ic7ae99a8f3ddba33d224387921a90624c37bc8b5
This commit is contained in:
parent
094656be6e
commit
85d2451148
|
@ -200,7 +200,7 @@ public class AccountSettingsFragment extends PreferenceFragment
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
final Bundle args = new Bundle(1);
|
final Bundle args = new Bundle(1);
|
||||||
args.putLong(AccountLoaderCallbacks.ARG_ACCOUNT_ID, mAccountId);
|
args.putLong(AccountLoaderCallbacks.ARG_ACCOUNT_ID, mAccountId);
|
||||||
getLoaderManager().initLoader(0, args, new AccountLoaderCallbacks());
|
getLoaderManager().initLoader(0, args, new AccountLoaderCallbacks(getActivity()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -424,6 +424,11 @@ public class AccountSettingsFragment extends PreferenceFragment
|
||||||
private class AccountLoaderCallbacks
|
private class AccountLoaderCallbacks
|
||||||
implements LoaderManager.LoaderCallbacks<Map<String, Object>> {
|
implements LoaderManager.LoaderCallbacks<Map<String, Object>> {
|
||||||
public static final String ARG_ACCOUNT_ID = "accountId";
|
public static final String ARG_ACCOUNT_ID = "accountId";
|
||||||
|
private final Context mContext;
|
||||||
|
|
||||||
|
private AccountLoaderCallbacks(Context context) {
|
||||||
|
mContext = context;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onLoadFinished(Loader<Map<String, Object>> loader, Map<String, Object> data) {
|
public void onLoadFinished(Loader<Map<String, Object>> loader, Map<String, Object> data) {
|
||||||
|
@ -436,6 +441,16 @@ public class AccountSettingsFragment extends PreferenceFragment
|
||||||
mUiAccount = (com.android.mail.providers.Account)
|
mUiAccount = (com.android.mail.providers.Account)
|
||||||
data.get(AccountLoader.RESULT_KEY_UIACCOUNT);
|
data.get(AccountLoader.RESULT_KEY_UIACCOUNT);
|
||||||
mAccount = (Account) data.get(AccountLoader.RESULT_KEY_ACCOUNT);
|
mAccount = (Account) data.get(AccountLoader.RESULT_KEY_ACCOUNT);
|
||||||
|
|
||||||
|
if (mAccount != null && (mAccount.mFlags & Account.FLAGS_SECURITY_HOLD) != 0) {
|
||||||
|
final Intent i = AccountSecurity.actionUpdateSecurityIntent(mContext,
|
||||||
|
mAccount.getId(), true);
|
||||||
|
mContext.startActivity(i);
|
||||||
|
mSaveOnExit = false;
|
||||||
|
mCallback.abandonEdit();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
final Folder inbox = (Folder) data.get(AccountLoader.RESULT_KEY_INBOX);
|
final Folder inbox = (Folder) data.get(AccountLoader.RESULT_KEY_INBOX);
|
||||||
|
|
||||||
if (mUiAccount == null || mAccount == null || inbox == null) {
|
if (mUiAccount == null || mAccount == null || inbox == null) {
|
||||||
|
|
Loading…
Reference in New Issue