diff options
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java b/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java index bb34e7958..9d30cdeb6 100644 --- a/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java +++ b/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java @@ -7,7 +7,6 @@ import android.content.pm.PackageManager; import android.net.Uri; import android.os.Build; import android.os.Bundle; -import android.util.Log; import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; @@ -17,7 +16,6 @@ import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -import de.pixart.messenger.Config; import de.pixart.messenger.R; import de.pixart.messenger.persistance.DatabaseBackend; import de.pixart.messenger.utils.SignupUtils; @@ -88,16 +86,23 @@ public class UriHandlerActivity extends AppCompatActivity { final Intent intent; final XmppUri xmppUri = new XmppUri(uri); final List<Jid> accounts = DatabaseBackend.getInstance(this).getAccountJids(true); - if (SignupUtils.isSupportTokenRegistry() && xmppUri.isJidValid() && xmppUri.isAction(XmppUri.ACTION_REGISTER)) { + if (SignupUtils.isSupportTokenRegistry() && xmppUri.isJidValid()) { final String preauth = xmppUri.getParamater("preauth"); final Jid jid = xmppUri.getJid(); - if (jid.isDomainJid()) { + if (xmppUri.isAction(XmppUri.ACTION_REGISTER)) { + if (jid.isDomainJid()) { + intent = SignupUtils.getTokenRegistrationIntent(this, jid.getDomain(), preauth); + startActivity(intent); + return; + } + return; + } + if (xmppUri.isAction(XmppUri.ACTION_ROSTER) && "y".equals(xmppUri.getParamater("ibr"))) { intent = SignupUtils.getTokenRegistrationIntent(this, jid.getDomain(), preauth); + intent.putExtra(StartConversationActivity.EXTRA_INVITE_URI, xmppUri.toString()); startActivity(intent); return; } - Log.d(Config.LOGTAG, "attempting to register on " + jid + " with preauth=" + preauth); - return; } if (accounts.size() == 0) { if (xmppUri.isJidValid()) { |