X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/fffa77e2115c03dfad403b0f9106736256b7c10b..fc5608de767a9c45073b870e2e2860a012800f99:/src/com/owncloud/android/ui/activity/AccountSelectActivity.java diff --git a/src/com/owncloud/android/ui/activity/AccountSelectActivity.java b/src/com/owncloud/android/ui/activity/AccountSelectActivity.java index 1a1cd51b..f5d06dcb 100644 --- a/src/com/owncloud/android/ui/activity/AccountSelectActivity.java +++ b/src/com/owncloud/android/ui/activity/AccountSelectActivity.java @@ -51,6 +51,7 @@ import com.owncloud.android.authentication.AccountAuthenticator; import com.owncloud.android.authentication.AuthenticatorActivity; import com.owncloud.android.authentication.AccountUtils; import com.owncloud.android.Log_OC; +import com.owncloud.android.MainApp; import com.owncloud.android.R; @@ -95,10 +96,10 @@ public class AccountSelectActivity extends SherlockListActivity implements /// the account set as default changed since this activity was created // trigger synchronization - ContentResolver.cancelSync(null, AccountAuthenticator.AUTHORITY); + ContentResolver.cancelSync(null, MainApp.getAuthTokenType()); Bundle bundle = new Bundle(); bundle.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true); - ContentResolver.requestSync(AccountUtils.getCurrentOwnCloudAccount(this), AccountAuthenticator.AUTHORITY, bundle); + ContentResolver.requestSync(AccountUtils.getCurrentOwnCloudAccount(this), MainApp.getAuthTokenType(), bundle); // restart the main activity Intent i = new Intent(this, FileDisplayActivity.class); @@ -110,8 +111,11 @@ public class AccountSelectActivity extends SherlockListActivity implements @Override public boolean onCreateOptionsMenu(Menu menu) { - MenuInflater inflater = getSherlock().getMenuInflater(); - inflater.inflate(R.menu.account_picker, menu); + // Show Create Account if Multiaccount is enabled + if (getResources().getBoolean(R.bool.multiaccount_support)) { + MenuInflater inflater = getSherlock().getMenuInflater(); + inflater.inflate(R.menu.account_picker, menu); + } return true; } @@ -133,11 +137,19 @@ public class AccountSelectActivity extends SherlockListActivity implements @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { if (item.getItemId() == R.id.createAccount) { - Intent intent = new Intent( + /*Intent intent = new Intent( android.provider.Settings.ACTION_ADD_ACCOUNT); intent.putExtra("authorities", - new String[] { AccountAuthenticator.AUTHORITY }); - startActivity(intent); + new String[] { MainApp.getAuthTokenType() }); + startActivity(intent);*/ + AccountManager am = AccountManager.get(getApplicationContext()); + am.addAccount(MainApp.getAccountType(), + null, + null, + null, + this, + null, + null); return true; } return false; @@ -165,7 +177,7 @@ public class AccountSelectActivity extends SherlockListActivity implements String accountName = map.get("NAME"); AccountManager am = (AccountManager) getSystemService(ACCOUNT_SERVICE); - Account accounts[] = am.getAccountsByType(AccountAuthenticator.ACCOUNT_TYPE); + Account accounts[] = am.getAccountsByType(MainApp.getAccountType()); for (Account a : accounts) { if (a.name.equals(accountName)) { if (item.getItemId() == R.id.change_password) { @@ -186,7 +198,7 @@ public class AccountSelectActivity extends SherlockListActivity implements private void populateAccountList() { AccountManager am = (AccountManager) getSystemService(ACCOUNT_SERVICE); Account accounts[] = am - .getAccountsByType(AccountAuthenticator.ACCOUNT_TYPE); + .getAccountsByType(MainApp.getAccountType()); LinkedList> ll = new LinkedList>(); for (Account a : accounts) { HashMap h = new HashMap(); @@ -202,6 +214,7 @@ public class AccountSelectActivity extends SherlockListActivity implements android.R.layout.simple_list_item_single_choice, new String[] { "NAME" }, new int[] { android.R.id.text1 })); registerForContextMenu(getListView()); + } @Override @@ -211,7 +224,7 @@ public class AccountSelectActivity extends SherlockListActivity implements String accountName = ""; if (a == null) { Account[] accounts = AccountManager.get(this) - .getAccountsByType(AccountAuthenticator.ACCOUNT_TYPE); + .getAccountsByType(MainApp.getAccountType()); if (accounts.length != 0) accountName = accounts[0].name; AccountUtils.setCurrentOwnCloudAccount(this, accountName);