From af11dac5e0f0c81c73f9e5c6558c309c837c1aa5 Mon Sep 17 00:00:00 2001 From: Jimmy Shih Date: Fri, 11 May 2012 16:09:59 -0700 Subject: [PATCH] Fix bug that the account chooser dialog is temporary shown again after choosing an account and granting permission. --- .../io/sendtogoogle/AccountChooserActivity.java | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java b/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java index f4d31ec07..caf5cbf3a 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java @@ -84,8 +84,14 @@ public class AccountChooserActivity extends Activity { sendRequest = getIntent().getParcelableExtra(SendRequest.SEND_REQUEST_KEY); accounts = AccountManager.get(this).getAccountsByType(Constants.ACCOUNT_TYPE); + if (accounts.length == 0) { + showDialog(DIALOG_NO_ACCOUNT_ID); + return; + } + if (accounts.length == 1) { sendRequest.setAccount(accounts[0]); + PreferencesUtils.setString(this, R.string.preferred_account_key, accounts[0].name); getPermission(MapsConstants.SERVICE_NAME, sendRequest.isSendMaps(), mapsCallback); return; } @@ -100,16 +106,7 @@ public class AccountChooserActivity extends Activity { break; } } - } - - @Override - protected void onResume() { - super.onResume(); - if (accounts.length == 0) { - showDialog(DIALOG_NO_ACCOUNT_ID); - } else if (accounts.length > 1 ) { - showDialog(DIALOG_CHOOSER_ID); - } + showDialog(DIALOG_CHOOSER_ID); } @Override