aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2017-12-27 20:53:01 +0100
committerChristian Schneppe <christian@pix-art.de>2017-12-27 20:53:01 +0100
commit1e50689658d0d2363e0fe965d99e50dd4bc66adf (patch)
treec35bfefb9299104484fa776f886d5c8a3d602a7c /src/main/java/de/pixart/messenger/ui/WelcomeActivity.java
parent1056adb285a367b7485e447e1a673a0885e9167e (diff)
transport invitee from welcome activity to start conversations activity
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/WelcomeActivity.java')
-rw-r--r--src/main/java/de/pixart/messenger/ui/WelcomeActivity.java51
1 files changed, 32 insertions, 19 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java b/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java
index a764a5d8e..3b6954f8f 100644
--- a/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java
@@ -38,9 +38,11 @@ import de.pixart.messenger.entities.Account;
import de.pixart.messenger.persistance.DatabaseBackend;
import de.pixart.messenger.persistance.FileBackend;
import de.pixart.messenger.utils.EncryptDecryptFile;
+import de.pixart.messenger.utils.XmppUri;
public class WelcomeActivity extends XmppActivity {
+ public static final String EXTRA_INVITEE = "eu.siacs.conversations.invitee";
boolean importSuccessful = false;
@Override
@@ -97,28 +99,24 @@ public class WelcomeActivity extends XmppActivity {
});
final Button createAccount = findViewById(R.id.create_account);
- createAccount.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Intent intent = new Intent(WelcomeActivity.this, MagicCreateActivity.class);
- intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
- startActivity(intent);
- }
+ createAccount.setOnClickListener(v -> {
+ final Intent intent = new Intent(WelcomeActivity.this, MagicCreateActivity.class);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
+ addInvitee(intent);
+ startActivity(intent);
});
final Button useOwnProvider = findViewById(R.id.use_existing_account);
- useOwnProvider.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- List<Account> accounts = xmppConnectionService.getAccounts();
- Intent intent = new Intent(WelcomeActivity.this, EditAccountActivity.class);
- if (accounts.size() == 1) {
- intent.putExtra("jid", accounts.get(0).getJid().toBareJid().toString());
- intent.putExtra("init", true);
- } else if (accounts.size() >= 1) {
- intent = new Intent(WelcomeActivity.this, ManageAccountActivity.class);
- }
- startActivity(intent);
+ useOwnProvider.setOnClickListener(v -> {
+ List<Account> accounts = xmppConnectionService.getAccounts();
+ Intent intent = new Intent(WelcomeActivity.this, EditAccountActivity.class);
+ if (accounts.size() == 1) {
+ intent.putExtra("jid", accounts.get(0).getJid().toBareJid().toString());
+ intent.putExtra("init", true);
+ } else if (accounts.size() >= 1) {
+ intent = new Intent(WelcomeActivity.this, ManageAccountActivity.class);
}
+ addInvitee(intent);
+ startActivity(intent);
});
}
@@ -314,4 +312,19 @@ public class WelcomeActivity extends XmppActivity {
}
}
+ public void addInvitee(Intent intent) {
+ addInvitee(intent, getIntent());
+ }
+
+ public static void addInvitee(Intent intent, XmppUri uri) {
+ if (uri.isJidValid()) {
+ intent.putExtra(EXTRA_INVITEE, uri.getJid().toString());
+ }
+ }
+
+ public static void addInvitee(Intent to, Intent from) {
+ if (from != null && from.hasExtra(EXTRA_INVITEE)) {
+ to.putExtra(EXTRA_INVITEE, from.getStringExtra(EXTRA_INVITEE));
+ }
+ }
} \ No newline at end of file