diff options
author | Daniel Gultsch <daniel@gultsch.de> | 2016-01-22 11:14:56 +0100 |
---|---|---|
committer | Daniel Gultsch <daniel@gultsch.de> | 2016-01-22 11:14:56 +0100 |
commit | 77c0fb0b2ae257b7bf257417ed689f2334507f2c (patch) | |
tree | 4e5575aecac5036c4734c349d9378409c5f31bc3 /src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java | |
parent | 3ff40a973377aca99ab8978f5517f92a123112cd (diff) |
changed spacing in create dialogs and notify user when no accounts are activated
Diffstat (limited to 'src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java')
-rw-r--r-- | src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java index 0bf4178f..00a501f3 100644 --- a/src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java @@ -393,7 +393,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU if (prefilledJid != null) { jid.append(prefilledJid); } - populateAccountSpinner(spinner); + populateAccountSpinner(this, mActivatedAccounts, spinner); final Checkable bookmarkCheckBox = (CheckBox) dialogView .findViewById(R.id.bookmark); builder.setView(dialogView); @@ -411,7 +411,6 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU } final Account account = getSelectedAccount(spinner); if (account == null) { - dialog.dismiss(); return; } final Jid conferenceJid; @@ -459,6 +458,9 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU } private Account getSelectedAccount(Spinner spinner) { + if (!spinner.isEnabled()) { + return null; + } Jid jid; try { if (Config.DOMAIN_LOCK != null) { @@ -479,11 +481,21 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU switchToConversation(conversation); } - private void populateAccountSpinner(Spinner spinner) { - ArrayAdapter<String> adapter = new ArrayAdapter<>(this, - android.R.layout.simple_spinner_item, mActivatedAccounts); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - spinner.setAdapter(adapter); + public static void populateAccountSpinner(Context context, List<String> accounts, Spinner spinner) { + if (accounts.size() > 0) { + ArrayAdapter<String> adapter = new ArrayAdapter<>(context, + android.R.layout.simple_spinner_item, accounts); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + spinner.setAdapter(adapter); + spinner.setEnabled(true); + } else { + ArrayAdapter<String> adapter = new ArrayAdapter<>(context, + android.R.layout.simple_spinner_item, + Arrays.asList(new String[]{context.getString(R.string.no_accounts)})); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + spinner.setAdapter(adapter); + spinner.setEnabled(false); + } } @Override |