diff options
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui')
29 files changed, 177 insertions, 181 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/BlockContactDialog.java b/src/main/java/de/pixart/messenger/ui/BlockContactDialog.java index 0a27274fd..981b29c41 100644 --- a/src/main/java/de/pixart/messenger/ui/BlockContactDialog.java +++ b/src/main/java/de/pixart/messenger/ui/BlockContactDialog.java @@ -1,8 +1,8 @@ package de.pixart.messenger.ui; -import android.support.v7.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; +import android.support.v7.app.AlertDialog; import android.text.SpannableString; import android.text.Spanned; import android.text.style.TypefaceSpan; @@ -16,6 +16,7 @@ import android.widget.Toast; import de.pixart.messenger.R; import de.pixart.messenger.entities.Blockable; import de.pixart.messenger.entities.Conversation; +import rocks.xmpp.addr.Jid; public final class BlockContactDialog { public static void show(final XmppActivity xmppActivity, final Blockable blockable) { @@ -32,14 +33,14 @@ public final class BlockContactDialog { String value; SpannableString spannable; - if (blockable.getJid().isDomainJid() || blockable.getAccount().isBlocked(blockable.getJid().toDomainJid())) { + if (blockable.getJid().getLocal() == null || blockable.getAccount().isBlocked(Jid.ofDomain(blockable.getJid().getDomain()))) { builder.setTitle(isBlocked ? R.string.action_unblock_domain : R.string.action_block_domain); - value = blockable.getJid().toDomainJid().toString(); + value = Jid.ofDomain(blockable.getJid().getDomain()).toString(); spannable = new SpannableString(xmppActivity.getString(isBlocked ? R.string.unblock_domain_text : R.string.block_domain_text, value)); } else { int resBlockAction = blockable instanceof Conversation && ((Conversation) blockable).isWithStranger() ? R.string.block_stranger : R.string.action_block_contact; builder.setTitle(isBlocked ? R.string.action_unblock_contact : resBlockAction); - value = blockable.getJid().toBareJid().toString(); + value = blockable.getJid().asBareJid().toString(); spannable = new SpannableString(xmppActivity.getString(isBlocked ? R.string.unblock_contact_text : R.string.block_contact_text, value)); } int start = spannable.toString().indexOf(value); diff --git a/src/main/java/de/pixart/messenger/ui/BlocklistActivity.java b/src/main/java/de/pixart/messenger/ui/BlocklistActivity.java index 22641375a..84d2ab24b 100644 --- a/src/main/java/de/pixart/messenger/ui/BlocklistActivity.java +++ b/src/main/java/de/pixart/messenger/ui/BlocklistActivity.java @@ -16,7 +16,7 @@ import de.pixart.messenger.R; import de.pixart.messenger.entities.Account; import de.pixart.messenger.entities.Contact; import de.pixart.messenger.xmpp.OnUpdateBlocklist; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class BlocklistActivity extends AbstractSearchableListItemActivity implements OnUpdateBlocklist { private List<String> mKnownHosts = new ArrayList<>(); @@ -86,7 +86,7 @@ public class BlocklistActivity extends AbstractSearchableListItemActivity implem EnterJidDialog dialog = new EnterJidDialog( this, mKnownHosts, null, getString(R.string.block_jabber_id), getString(R.string.block), - null, account.getJid().toBareJid().toString(), true, xmppConnectionService.multipleAccounts() + null, account.getJid().asBareJid().toString(), true, xmppConnectionService.multipleAccounts() ); dialog.setOnEnterJidDialogPositiveListener(new EnterJidDialog.OnEnterJidDialogPositiveListener() { diff --git a/src/main/java/de/pixart/messenger/ui/ChooseContactActivity.java b/src/main/java/de/pixart/messenger/ui/ChooseContactActivity.java index f2d25d377..4450c8759 100644 --- a/src/main/java/de/pixart/messenger/ui/ChooseContactActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ChooseContactActivity.java @@ -29,7 +29,7 @@ import de.pixart.messenger.entities.Contact; import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.entities.ListItem; import de.pixart.messenger.entities.MucOptions; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class ChooseContactActivity extends AbstractSearchableListItemActivity { private List<String> mActivatedAccounts = new ArrayList<>(); @@ -123,7 +123,7 @@ public class ChooseContactActivity extends AbstractSearchableListItemActivity { data.putExtra("contact", mListItem.getJid().toString()); String account = request.getStringExtra(EXTRA_ACCOUNT); if (account == null && mListItem instanceof Contact) { - account = ((Contact) mListItem).getAccount().getJid().toBareJid().toString(); + account = ((Contact) mListItem).getAccount().getJid().asBareJid().toString(); } data.putExtra(EXTRA_ACCOUNT, account); data.putExtra("conversation", @@ -172,7 +172,7 @@ public class ChooseContactActivity extends AbstractSearchableListItemActivity { if (account.getStatus() != Account.State.DISABLED) { for (final Contact contact : account.getRoster().getContacts()) { if (contact.showInRoster() && - !filterContacts.contains(contact.getJid().toBareJid().toString()) + !filterContacts.contains(contact.getJid().asBareJid().toString()) && contact.match(this, needle)) { getListItems().add(contact); } @@ -242,9 +242,9 @@ public class ChooseContactActivity extends AbstractSearchableListItemActivity { for (Account account : xmppConnectionService.getAccounts()) { if (account.getStatus() != Account.State.DISABLED) { if (Config.DOMAIN_LOCK != null) { - this.mActivatedAccounts.add(account.getJid().getLocalpart()); + this.mActivatedAccounts.add(account.getJid().getLocal()); } else { - this.mActivatedAccounts.add(account.getJid().toBareJid().toString()); + this.mActivatedAccounts.add(account.getJid().asBareJid().toString()); } } } @@ -258,17 +258,17 @@ public class ChooseContactActivity extends AbstractSearchableListItemActivity { for (MucOptions.User user : conversation.getMucOptions().getUsers(false)) { Jid jid = user.getRealJid(); if (jid != null) { - contacts.add(jid.toBareJid().toString()); + contacts.add(jid.asBareJid().toString()); } } } else { - contacts.add(conversation.getJid().toBareJid().toString()); + contacts.add(conversation.getJid().asBareJid().toString()); } intent.putExtra("filter_contacts", contacts.toArray(new String[contacts.size()])); intent.putExtra("conversation", conversation.getUuid()); intent.putExtra("multiple", true); intent.putExtra("show_enter_jid", true); - intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().asBareJid().toString()); return intent; } } diff --git a/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java b/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java index b51bb6329..e82c321d6 100644 --- a/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java @@ -54,7 +54,7 @@ import de.pixart.messenger.services.XmppConnectionService.OnConversationUpdate; import de.pixart.messenger.services.XmppConnectionService.OnMucRosterUpdate; import de.pixart.messenger.utils.TimeframeUtils; import de.pixart.messenger.utils.UIHelper; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class ConferenceDetailsActivity extends XmppActivity implements OnConversationUpdate, OnMucRosterUpdate, XmppConnectionService.OnAffiliationChanged, XmppConnectionService.OnRoleChanged, XmppConnectionService.OnConfigurationPushed { public static final String ACTION_VIEW_MUC = "view_muc"; @@ -374,9 +374,9 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers protected String getShareableUri(boolean http) { if (mConversation != null) { if (http) { - return Config.inviteMUCURL + mConversation.getJid().toBareJid(); + return Config.inviteMUCURL + mConversation.getJid().asBareJid(); } else { - return "xmpp:" + mConversation.getJid().toBareJid() + "?join"; + return "xmpp:" + mConversation.getJid().asBareJid() + "?join"; } } else { return null; @@ -424,7 +424,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers if (contact != null && contact.showInRoster()) { name = contact.getDisplayName(); } else if (user.getRealJid() != null){ - name = user.getRealJid().toBareJid().toString(); + name = user.getRealJid().asBareJid().toString(); } else { name = user.getName(); } @@ -556,7 +556,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers protected void startConversation(User user) { if (user.getRealJid() != null) { - Conversation conversation = xmppConnectionService.findOrCreateConversation(this.mConversation.getAccount(), user.getRealJid().toBareJid(), false, true); + Conversation conversation = xmppConnectionService.findOrCreateConversation(this.mConversation.getAccount(), user.getRealJid().asBareJid(), false, true); switchToConversation(conversation); } } @@ -598,9 +598,9 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers final User self = mucOptions.getSelf(); String account; if (Config.DOMAIN_LOCK != null) { - account = mConversation.getAccount().getJid().getLocalpart(); + account = mConversation.getAccount().getJid().getLocal(); } else { - account = mConversation.getAccount().getJid().toBareJid().toString(); + account = mConversation.getAccount().getJid().asBareJid().toString(); } if (getSupportActionBar() != null) { final ActionBar ab = getSupportActionBar(); @@ -625,7 +625,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers } mYourPhoto.setImageBitmap(avatarService().get(mConversation.getAccount(), getPixel(48))); setTitle(mConversation.getName()); - mFullJid.setText(mConversation.getJid().toBareJid().toString()); + mFullJid.setText(mConversation.getJid().asBareJid().toString()); mYourNick.setText(mucOptions.getActualNick()); TextView mRoleAffiliaton = findViewById(R.id.muc_role); if (mucOptions.online()) { @@ -753,7 +753,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers @Override public void onAffiliationChangeFailed(Jid jid, int resId) { - displayToast(getString(resId, jid.toBareJid().toString())); + displayToast(getString(resId, jid.asBareJid().toString())); } @Override @@ -813,7 +813,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers imageView.setImageBitmap(bm); imageView.setBackgroundColor(0x00000000); } else { - String seed = user.getRealJid() != null ? user.getRealJid().toBareJid().toString() : null; + String seed = user.getRealJid() != null ? user.getRealJid().asBareJid().toString() : null; imageView.setBackgroundColor(UIHelper.getColorForName(seed == null ? user.getName() : seed)); imageView.setImageDrawable(null); final BitmapWorkerTask task = new BitmapWorkerTask(imageView); diff --git a/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java b/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java index 635c5c7d6..18a3e8adc 100644 --- a/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java @@ -51,8 +51,7 @@ import de.pixart.messenger.utils.XmppUri; import de.pixart.messenger.xmpp.OnKeyStatusUpdated; import de.pixart.messenger.xmpp.OnUpdateBlocklist; import de.pixart.messenger.xmpp.XmppConnection; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class ContactDetailsActivity extends OmemoActivity implements OnAccountUpdate, OnRosterUpdate, OnUpdateBlocklist, OnKeyStatusUpdated { public static final String ACTION_VIEW_CONTACT = "view_contact"; @@ -232,7 +231,7 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp protected String getShareableUri(boolean http) { final String prefix = http ? Config.inviteUserURL : "xmpp:"; if (contact != null) { - return prefix + contact.getJid().toBareJid().toString(); + return prefix + contact.getJid().asBareJid().toString(); } else { return ""; } @@ -244,12 +243,12 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp showInactiveOmemo = savedInstanceState != null && savedInstanceState.getBoolean("show_inactive_omemo", false); if (getIntent().getAction().equals(ACTION_VIEW_CONTACT)) { try { - this.accountJid = Jid.fromString(getIntent().getExtras().getString(EXTRA_ACCOUNT)); - } catch (final InvalidJidException ignored) { + this.accountJid = Jid.of(getIntent().getExtras().getString(EXTRA_ACCOUNT)); + } catch (final IllegalArgumentException ignored) { } try { - this.contactJid = Jid.fromString(getIntent().getExtras().getString("contact")); - } catch (final InvalidJidException ignored) { + this.contactJid = Jid.of(getIntent().getExtras().getString("contact")); + } catch (final IllegalArgumentException ignored) { } } this.messageFingerprint = getIntent().getStringExtra("fingerprint"); @@ -390,7 +389,7 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp invalidateOptionsMenu(); setTitle(contact.getDisplayName()); - if (contact.getServer().toString().toLowerCase().equals(accountJid.getDomainpart().toLowerCase())) { + if (contact.getServer().toString().toLowerCase().equals(accountJid.getDomain().toLowerCase())) { binding.contactDisplayName.setText(contact.getDisplayName()); } else { binding.contactDisplayName.setText(contact.getDisplayJid()); @@ -518,9 +517,9 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp } String account; if (Config.DOMAIN_LOCK != null) { - account = contact.getAccount().getJid().getLocalpart(); + account = contact.getAccount().getJid().getLocal(); } else { - account = contact.getAccount().getJid().toBareJid().toString(); + account = contact.getAccount().getJid().asBareJid().toString(); } binding.detailsAccount.setText(getString(R.string.using_account, account)); binding.detailsContactBadge.setImageBitmap(avatarService().get(contact, getPixel(Config.AVATAR_SIZE))); @@ -679,7 +678,7 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp @Override protected void processFingerprintVerification(XmppUri uri) { - if (contact != null && contact.getJid().toBareJid().equals(uri.getJid()) && uri.hasFingerprints()) { + if (contact != null && contact.getJid().asBareJid().equals(uri.getJid()) && uri.hasFingerprints()) { if (xmppConnectionService.verifyFingerprints(contact, uri.getFingerprints())) { Toast.makeText(this, R.string.verified_fingerprints, Toast.LENGTH_SHORT).show(); } diff --git a/src/main/java/de/pixart/messenger/ui/ConversationActivity.java b/src/main/java/de/pixart/messenger/ui/ConversationActivity.java index adfbde7c7..be7fdbc28 100644 --- a/src/main/java/de/pixart/messenger/ui/ConversationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ConversationActivity.java @@ -234,7 +234,7 @@ public class ConversationActivity extends XmppActivity implements OnConversation Intent intent; if (pendingAccount != null) { intent = new Intent(this, EditAccountActivity.class); - intent.putExtra("jid", pendingAccount.getJid().toBareJid().toString()); + intent.putExtra("jid", pendingAccount.getJid().asBareJid().toString()); } else { if (xmppConnectionService.getAccounts().size() == 0) { if (Config.X509_VERIFICATION) { @@ -784,8 +784,8 @@ public class ConversationActivity extends XmppActivity implements OnConversation public boolean onMenuItemClick(MenuItem menuItem) { Intent intent = new Intent(ConversationActivity.this, VerifyOTRActivity.class); intent.setAction(VerifyOTRActivity.ACTION_VERIFY_CONTACT); - intent.putExtra("contact", conversation.getContact().getJid().toBareJid().toString()); - intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().toBareJid().toString()); + intent.putExtra("contact", conversation.getContact().getJid().asBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().asBareJid().toString()); switch (menuItem.getItemId()) { case R.id.scan_fingerprint: intent.putExtra("mode", VerifyOTRActivity.MODE_SCAN_FINGERPRINT); diff --git a/src/main/java/de/pixart/messenger/ui/ConversationFragment.java b/src/main/java/de/pixart/messenger/ui/ConversationFragment.java index 9425a4eb5..41047b785 100644 --- a/src/main/java/de/pixart/messenger/ui/ConversationFragment.java +++ b/src/main/java/de/pixart/messenger/ui/ConversationFragment.java @@ -111,8 +111,7 @@ import de.pixart.messenger.utils.StylingHelper; import de.pixart.messenger.utils.UIHelper; import de.pixart.messenger.xmpp.XmppConnection; import de.pixart.messenger.xmpp.chatstate.ChatState; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; import static de.pixart.messenger.ui.XmppActivity.EXTRA_ACCOUNT; import static de.pixart.messenger.ui.XmppActivity.REQUEST_INVITE_TO_CONVERSATION; @@ -369,8 +368,8 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke public void onClick(View view) { Intent intent = new Intent(activity, VerifyOTRActivity.class); intent.setAction(VerifyOTRActivity.ACTION_VERIFY_CONTACT); - intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().toBareJid().toString()); - intent.putExtra(VerifyOTRActivity.EXTRA_ACCOUNT, conversation.getAccount().getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().asBareJid().toString()); + intent.putExtra(VerifyOTRActivity.EXTRA_ACCOUNT, conversation.getAccount().getJid().asBareJid().toString()); intent.putExtra("mode", VerifyOTRActivity.MODE_ANSWER_QUESTION); startActivity(intent); } @@ -920,7 +919,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke contacts[i] = targets.get(i).toString(); } intent.putExtra("contacts", contacts); - intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, conversation.getAccount().getJid().asBareJid().toString()); intent.putExtra("choice", attachmentChoice); intent.putExtra("conversation", conversation.getUuid()); startActivityForResult(intent, requestCode); @@ -938,10 +937,10 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke } else if (multi && conversation.getNextCounterpart() != null) { this.binding.textinput.setHint(getString( R.string.send_private_message_to, - conversation.getNextCounterpart().getResourcepart())); + conversation.getNextCounterpart().getResource())); showMessageHint(getString( R.string.send_private_message_to, - conversation.getNextCounterpart().getResourcepart())); + conversation.getNextCounterpart().getResource())); } else if (multi && !conversation.getMucOptions().participating()) { this.binding.textinput.setHint(R.string.you_are_not_participating); hideMessageHint(); @@ -1126,9 +1125,9 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke Jid user = message.getCounterpart(); if (user != null && !user.isBareJid()) { if (!message.getConversation().getMucOptions().isUserInRoom(user)) { - Toast.makeText(activity, getActivity().getString(R.string.user_has_left_conference, user.getResourcepart()), Toast.LENGTH_SHORT).show(); + Toast.makeText(activity, getActivity().getString(R.string.user_has_left_conference, user.getResource()), Toast.LENGTH_SHORT).show(); } - highlightInConference(user.getResourcepart()); + highlightInConference(user.getResource()); } return; } else { @@ -1147,7 +1146,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke } Account account = message.getConversation().getAccount(); Intent intent = new Intent(activity, EditAccountActivity.class); - intent.putExtra("jid", account.getJid().toBareJid().toString()); + intent.putExtra("jid", account.getJid().asBareJid().toString()); String fingerprint; if (message.getEncryption() == Message.ENCRYPTION_PGP || message.getEncryption() == Message.ENCRYPTION_DECRYPTED) { @@ -1171,7 +1170,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke if (mucOptions.isUserInRoom(user)) { privateMessageWith(user); } else { - Toast.makeText(getActivity(), activity.getString(R.string.user_has_left_conference, user.getResourcepart()), Toast.LENGTH_SHORT).show(); + Toast.makeText(getActivity(), activity.getString(R.string.user_has_left_conference, user.getResource()), Toast.LENGTH_SHORT).show(); } } } @@ -2127,9 +2126,9 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke if (pm) { Jid jid = conversation.getJid(); try { - Jid next = Jid.fromParts(jid.getLocalpart(), jid.getDomainpart(), nick); + Jid next = Jid.of(jid.getLocal(), jid.getDomain(), nick); privateMessageWith(next); - } catch (final InvalidJidException ignored) { + } catch (final IllegalArgumentException ignored) { //do nothing } } else { @@ -2146,7 +2145,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke private boolean showBlockSubmenu(View view) { final Jid jid = conversation.getJid(); - if (jid.isDomainJid()) { + if (jid.getLocal() == null) { BlockContactDialog.show(activity, conversation); } else { PopupMenu popupMenu = new PopupMenu(getActivity(), view); @@ -2155,7 +2154,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke Blockable blockable; switch (menuItem.getItemId()) { case R.id.block_domain: - blockable = conversation.getAccount().getRoster().getContact(jid.toDomainJid()); + blockable = conversation.getAccount().getRoster().getContact(Jid.ofDomain(jid.getDomain())); break; default: blockable = conversation; @@ -2247,7 +2246,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke ((Config.supportOmemo() && axolotlService != null && conversation.getAccount().getAxolotlService().isConversationAxolotlCapable(conversation)) || (Config.supportOpenPgp() && account.isPgpDecryptionServiceConnected()) || Config.supportOtr()))) { - if (ENCRYPTION_EXCEPTIONS.contains(conversation.getJid().toString()) || conversation.getJid().toString().equals(account.getJid().getDomainpart())) { + if (ENCRYPTION_EXCEPTIONS.contains(conversation.getJid().toString()) || conversation.getJid().toString().equals(account.getJid().getDomain())) { hideSnackbar(); } else { showSnackbar(R.string.conversation_unencrypted_hint, R.string.ok, mHideUnencryptionHint, null); @@ -2256,7 +2255,7 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke (conversation.getNextEncryption() == Message.ENCRYPTION_NONE && ((Config.supportOmemo() && axolotlService != null && conversation.getAccount().getAxolotlService().isConversationAxolotlCapable(conversation)) || (Config.supportOpenPgp() && account.isPgpDecryptionServiceConnected())))) { - if (ENCRYPTION_EXCEPTIONS.contains(conversation.getJid().toString()) || conversation.getJid().toString().equals(account.getJid().getDomainpart())) { + if (ENCRYPTION_EXCEPTIONS.contains(conversation.getJid().toString()) || conversation.getJid().toString().equals(account.getJid().getDomain())) { Log.d(Config.LOGTAG, "Don't show unencrypted warning because " + conversation.getJid().toString() + " is on exception list"); hideSnackbar(); } else { diff --git a/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java b/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java index 036ddabab..acbf89211 100644 --- a/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java +++ b/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java @@ -74,9 +74,8 @@ import de.pixart.messenger.xmpp.OnUpdateBlocklist; import de.pixart.messenger.xmpp.XmppConnection; import de.pixart.messenger.xmpp.XmppConnection.Features; import de.pixart.messenger.xmpp.forms.Data; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; import de.pixart.messenger.xmpp.pep.Avatar; +import rocks.xmpp.addr.Jid; public class EditAccountActivity extends OmemoActivity implements OnAccountUpdate, OnUpdateBlocklist, OnKeyStatusUpdated, OnCaptchaRequested, KeyChainAliasCallback, XmppConnectionService.OnShowErrorToast, XmppConnectionService.OnMamPreferencesFetched { @@ -181,11 +180,11 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat final Jid jid; try { if (mUsernameMode) { - jid = Jid.fromParts(binding.accountJid.getText().toString(), getUserModeDomain(), null); + jid = Jid.of(binding.accountJid.getText().toString(), getUserModeDomain(), null); } else { - jid = Jid.fromString(binding.accountJid.getText().toString()); + jid = Jid.of(binding.accountJid.getText().toString()); } - } catch (final InvalidJidException e) { + } catch (final IllegalArgumentException e) { if (mUsernameMode) { mAccountJidLayout.setError(getString(R.string.invalid_username)); } else { @@ -223,7 +222,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat } } - if (jid.isDomainJid()) { + if (jid.getLocal() == null) { if (mUsernameMode) { mAccountJidLayout.setError(getString(R.string.invalid_username)); } else { @@ -263,7 +262,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat binding.accountJid.requestFocus(); return; } - mAccount = new Account(jid.toBareJid(), password); + mAccount = new Account(jid.asBareJid(), password); mAccount.setPort(numericPort); mAccount.setHostname(hostname); mAccount.setOption(Account.OPTION_USETLS, true); @@ -406,7 +405,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat public void onClick(final View view) { if (mAccount != null) { final Intent intent = new Intent(getApplicationContext(), PublishProfilePictureActivity.class); - intent.putExtra(EXTRA_ACCOUNT, mAccount.getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, mAccount.getJid().asBareJid().toString()); startActivity(intent); } } @@ -425,7 +424,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat } } else { intent = new Intent(getApplicationContext(), PublishProfilePictureActivity.class); - intent.putExtra(EXTRA_ACCOUNT, mAccount.getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, mAccount.getJid().asBareJid().toString()); intent.putExtra("setup", true); } if (wasFirstAccount) { @@ -460,7 +459,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat protected void processFingerprintVerification(XmppUri uri, boolean showWarningToast) { - if (mAccount != null && mAccount.getJid().toBareJid().equals(uri.getJid()) && uri.hasFingerprints()) { + if (mAccount != null && mAccount.getJid().asBareJid().equals(uri.getJid()) && uri.hasFingerprints()) { if (xmppConnectionService.verifyFingerprints(mAccount,uri.getFingerprints())) { Toast.makeText(this,R.string.verified_fingerprints,Toast.LENGTH_SHORT).show(); } @@ -527,9 +526,9 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat protected boolean jidEdited() { final String unmodified; if (mUsernameMode) { - unmodified = this.mAccount.getJid().getLocalpart(); + unmodified = this.mAccount.getJid().getLocal(); } else { - unmodified = this.mAccount.getJid().toBareJid().toString(); + unmodified = this.mAccount.getJid().asBareJid().toString(); } return !unmodified.equals(this.binding.accountJid.getText().toString()); } @@ -696,8 +695,8 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat recreate(); } else if (getIntent() != null) { try { - this.jidToEdit = Jid.fromString(getIntent().getStringExtra("jid")); - } catch (final InvalidJidException | NullPointerException ignored) { + this.jidToEdit = Jid.of(getIntent().getStringExtra("jid")); + } catch (final IllegalArgumentException | NullPointerException ignored) { this.jidToEdit = null; } if (jidToEdit != null && getIntent().getData() != null) { @@ -749,7 +748,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat @Override public void onSaveInstanceState(final Bundle savedInstanceState) { if (mAccount != null) { - savedInstanceState.putString("account", mAccount.getJid().toBareJid().toString()); + savedInstanceState.putString("account", mAccount.getJid().asBareJid().toString()); savedInstanceState.putBoolean("initMode", mInitMode); savedInstanceState.putBoolean("showMoreTable", mMoreTable.getVisibility() == View.VISIBLE); } @@ -760,10 +759,10 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat boolean init = true; if (mSavedInstanceAccount != null) { try { - this.mAccount = xmppConnectionService.findAccountByJid(Jid.fromString(mSavedInstanceAccount)); + this.mAccount = xmppConnectionService.findAccountByJid(Jid.of(mSavedInstanceAccount)); this.mInitMode = mSavedInstanceInit; init = false; - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { this.mAccount = null; } @@ -809,7 +808,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat private String getUserModeDomain() { if (mAccount != null) { - return mAccount.getJid().getDomainpart(); + return mAccount.getJid().getDomain(); } else { return Config.DOMAIN_LOCK; } @@ -995,9 +994,9 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat if (init) { this.binding.accountJid.getEditableText().clear(); if (mUsernameMode) { - this.binding.accountJid.getEditableText().append(this.mAccount.getJid().getLocalpart()); + this.binding.accountJid.getEditableText().append(this.mAccount.getJid().getLocal()); } else { - this.binding.accountJid.getEditableText().append(this.mAccount.getJid().toBareJid().toString()); + this.binding.accountJid.getEditableText().append(this.mAccount.getJid().asBareJid().toString()); } this.mPassword.getEditableText().clear(); this.mPassword.getEditableText().append(this.mAccount.getPassword()); diff --git a/src/main/java/de/pixart/messenger/ui/EnterJidDialog.java b/src/main/java/de/pixart/messenger/ui/EnterJidDialog.java index 2f3315d22..713279422 100644 --- a/src/main/java/de/pixart/messenger/ui/EnterJidDialog.java +++ b/src/main/java/de/pixart/messenger/ui/EnterJidDialog.java @@ -16,8 +16,7 @@ import de.pixart.messenger.Config; import de.pixart.messenger.R; import de.pixart.messenger.ui.adapter.KnownHostsAdapter; import de.pixart.messenger.ui.util.DelayedHintHelper; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class EnterJidDialog { public interface OnEnterJidDialogPositiveListener { @@ -95,17 +94,17 @@ public class EnterJidDialog { } try { if (Config.DOMAIN_LOCK != null) { - accountJid = Jid.fromParts((String) spinner.getSelectedItem(), Config.DOMAIN_LOCK, null); + accountJid = Jid.of((String) spinner.getSelectedItem(), Config.DOMAIN_LOCK, null); } else { - accountJid = Jid.fromString((String) spinner.getSelectedItem()); + accountJid = Jid.of((String) spinner.getSelectedItem()); } - } catch (final InvalidJidException e) { + } catch (final IllegalArgumentException e) { return; } final Jid contactJid; try { - contactJid = Jid.fromString(jid.getText().toString()); - } catch (final InvalidJidException e) { + contactJid = Jid.of(jid.getText().toString()); + } catch (final IllegalArgumentException e) { jid.setError(context.getString(R.string.invalid_jid)); return; } diff --git a/src/main/java/de/pixart/messenger/ui/LocationActivity.java b/src/main/java/de/pixart/messenger/ui/LocationActivity.java index 04bd03584..ccf28bdf2 100644 --- a/src/main/java/de/pixart/messenger/ui/LocationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/LocationActivity.java @@ -1,6 +1,5 @@ package de.pixart.messenger.ui; -import android.app.Activity; import android.content.Context; import android.location.Location; import android.location.LocationListener; diff --git a/src/main/java/de/pixart/messenger/ui/MagicCreateActivity.java b/src/main/java/de/pixart/messenger/ui/MagicCreateActivity.java index 7f4531b41..91c527ca1 100644 --- a/src/main/java/de/pixart/messenger/ui/MagicCreateActivity.java +++ b/src/main/java/de/pixart/messenger/ui/MagicCreateActivity.java @@ -16,8 +16,7 @@ import java.security.SecureRandom; import de.pixart.messenger.Config; import de.pixart.messenger.R; import de.pixart.messenger.entities.Account; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class MagicCreateActivity extends XmppActivity implements TextWatcher { @@ -66,7 +65,7 @@ public class MagicCreateActivity extends XmppActivity implements TextWatcher { } else { mUsername.setError(null); try { - Jid jid = Jid.fromParts(username.toLowerCase(), Config.MAGIC_CREATE_DOMAIN, null); + Jid jid = Jid.of(username.toLowerCase(), Config.MAGIC_CREATE_DOMAIN, null); Account account = xmppConnectionService.findAccountByJid(jid); if (account == null) { account = new Account(jid, createPassword()); @@ -76,13 +75,13 @@ public class MagicCreateActivity extends XmppActivity implements TextWatcher { xmppConnectionService.createAccount(account); } Intent intent = new Intent(MagicCreateActivity.this, EditAccountActivity.class); - intent.putExtra("jid", account.getJid().toBareJid().toString()); + intent.putExtra("jid", account.getJid().asBareJid().toString()); intent.putExtra("init", true); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); Toast.makeText(MagicCreateActivity.this, R.string.secure_password_generated, Toast.LENGTH_SHORT).show(); WelcomeActivity.addInviteUri(intent, getIntent()); startActivity(intent); - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { mUsername.setError(getString(R.string.invalid_username)); mUsername.requestFocus(); } @@ -114,9 +113,9 @@ public class MagicCreateActivity extends XmppActivity implements TextWatcher { if (s.toString().trim().length() > 0) { try { mFullJidDisplay.setVisibility(View.VISIBLE); - Jid jid = Jid.fromParts(s.toString().toLowerCase(), Config.MAGIC_CREATE_DOMAIN, null); + Jid jid = Jid.of(s.toString().toLowerCase(), Config.MAGIC_CREATE_DOMAIN, null); mFullJidDisplay.setText(getString(R.string.your_full_jid_will_be, jid.toString())); - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { mFullJidDisplay.setVisibility(View.INVISIBLE); } diff --git a/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java b/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java index 253dccd1c..9513c2fca 100644 --- a/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java @@ -1,12 +1,12 @@ package de.pixart.messenger.ui; -import android.support.v7.app.AlertDialog; import android.content.ActivityNotFoundException; import android.content.Intent; import android.os.Bundle; import android.security.KeyChain; import android.security.KeyChainAliasCallback; import android.support.v7.app.ActionBar; +import android.support.v7.app.AlertDialog; import android.util.Pair; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; @@ -32,8 +32,7 @@ import de.pixart.messenger.services.XmppConnectionService; import de.pixart.messenger.services.XmppConnectionService.OnAccountUpdate; import de.pixart.messenger.ui.adapter.AccountAdapter; import de.pixart.messenger.xmpp.XmppConnection; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class ManageAccountActivity extends XmppActivity implements OnAccountUpdate, KeyChainAliasCallback, XmppConnectionService.OnAccountCreated { @@ -80,8 +79,8 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda String jid = savedInstanceState.getString(STATE_SELECTED_ACCOUNT); if (jid != null) { try { - this.selectedAccountJid = Jid.fromString(jid); - } catch (InvalidJidException e) { + this.selectedAccountJid = Jid.of(jid); + } catch (IllegalArgumentException e) { this.selectedAccountJid = null; } } @@ -113,7 +112,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda @Override public void onSaveInstanceState(final Bundle savedInstanceState) { if (selectedAccount != null) { - savedInstanceState.putString(STATE_SELECTED_ACCOUNT, selectedAccount.getJid().toBareJid().toString()); + savedInstanceState.putString(STATE_SELECTED_ACCOUNT, selectedAccount.getJid().asBareJid().toString()); } super.onSaveInstanceState(savedInstanceState); } @@ -132,7 +131,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(false); menu.findItem(R.id.mgmt_account_publish_avatar).setVisible(false); } - menu.setHeaderTitle(this.selectedAccount.getJid().toBareJid().toString()); + menu.setHeaderTitle(this.selectedAccount.getJid().asBareJid().toString()); } @Override @@ -362,7 +361,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda @Override public void onAccountCreated(Account account) { Intent intent = new Intent(this, EditAccountActivity.class); - intent.putExtra("jid", account.getJid().toBareJid().toString()); + intent.putExtra("jid", account.getJid().asBareJid().toString()); intent.putExtra("init", true); startActivity(intent); } diff --git a/src/main/java/de/pixart/messenger/ui/OmemoActivity.java b/src/main/java/de/pixart/messenger/ui/OmemoActivity.java index 850188a2c..338647be8 100644 --- a/src/main/java/de/pixart/messenger/ui/OmemoActivity.java +++ b/src/main/java/de/pixart/messenger/ui/OmemoActivity.java @@ -3,7 +3,6 @@ package de.pixart.messenger.ui; import android.content.Intent; import android.databinding.DataBindingUtil; -import android.support.v4.content.ContextCompat; import android.support.v7.app.AlertDialog; import android.view.ContextMenu; import android.view.MenuItem; diff --git a/src/main/java/de/pixart/messenger/ui/SettingsActivity.java b/src/main/java/de/pixart/messenger/ui/SettingsActivity.java index fc50ce444..da6373250 100644 --- a/src/main/java/de/pixart/messenger/ui/SettingsActivity.java +++ b/src/main/java/de/pixart/messenger/ui/SettingsActivity.java @@ -38,8 +38,7 @@ import de.pixart.messenger.services.ExportLogsService; import de.pixart.messenger.services.MemorizingTrustManager; import de.pixart.messenger.ui.util.Color; import de.pixart.messenger.utils.TimeframeUtils; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class SettingsActivity extends XmppActivity implements OnSharedPreferenceChangeListener { @@ -314,7 +313,7 @@ public class SettingsActivity extends XmppActivity implements final List<CharSequence> accounts = new ArrayList<>(); for (Account account : xmppConnectionService.getAccounts()) { if (account.isEnabled()) { - accounts.add(account.getJid().toBareJid().toString()); + accounts.add(account.getJid().asBareJid().toString()); } } final boolean[] checkedItems = new boolean[accounts.size()]; @@ -334,12 +333,12 @@ public class SettingsActivity extends XmppActivity implements for (int i = 0; i < checkedItems.length; ++i) { if (checkedItems[i]) { try { - Jid jid = Jid.fromString(accounts.get(i).toString()); + Jid jid = Jid.of(accounts.get(i).toString()); Account account = xmppConnectionService.findAccountByJid(jid); if (account != null) { account.getAxolotlService().regenerateKeys(true); } - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { // } } diff --git a/src/main/java/de/pixart/messenger/ui/ShareViaAccountActivity.java b/src/main/java/de/pixart/messenger/ui/ShareViaAccountActivity.java index 509cd63f4..74892ed93 100644 --- a/src/main/java/de/pixart/messenger/ui/ShareViaAccountActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ShareViaAccountActivity.java @@ -14,8 +14,7 @@ import de.pixart.messenger.R; import de.pixart.messenger.entities.Account; import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.ui.adapter.AccountAdapter; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class ShareViaAccountActivity extends XmppActivity { public static final String EXTRA_CONTACT = "contact"; @@ -57,11 +56,11 @@ public class ShareViaAccountActivity extends XmppActivity { final String body = getIntent().getStringExtra(EXTRA_BODY); try { - final Jid contact = Jid.fromString(getIntent().getStringExtra(EXTRA_CONTACT)); + final Jid contact = Jid.of(getIntent().getStringExtra(EXTRA_CONTACT)); final Conversation conversation = xmppConnectionService.findOrCreateConversation( account, contact, false, false); switchToConversation(conversation, body, false); - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { // ignore error } @@ -88,11 +87,11 @@ public class ShareViaAccountActivity extends XmppActivity { final Account account = xmppConnectionService.getAccounts().get(0); try { - final Jid contact = Jid.fromString(getIntent().getStringExtra(EXTRA_CONTACT)); + final Jid contact = Jid.of(getIntent().getStringExtra(EXTRA_CONTACT)); final Conversation conversation = xmppConnectionService.findOrCreateConversation( account, contact, false, false); switchToConversation(conversation, body, false); - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { // ignore error } diff --git a/src/main/java/de/pixart/messenger/ui/ShareWithActivity.java b/src/main/java/de/pixart/messenger/ui/ShareWithActivity.java index cbd2ca0eb..864653052 100644 --- a/src/main/java/de/pixart/messenger/ui/ShareWithActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ShareWithActivity.java @@ -28,8 +28,7 @@ import de.pixart.messenger.services.XmppConnectionService; import de.pixart.messenger.ui.adapter.ConversationAdapter; import de.pixart.messenger.ui.util.PresenceSelector; import de.pixart.messenger.xmpp.XmppConnection; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; import static de.pixart.messenger.ui.SettingsActivity.USE_BUNDLED_EMOJIS; import static java.lang.String.format; @@ -295,8 +294,8 @@ public class ShareWithActivity extends XmppActivity implements XmppConnectionSer } else { Account account; try { - account = xmppConnectionService.findAccountByJid(Jid.fromString(share.account)); - } catch (final InvalidJidException e) { + account = xmppConnectionService.findAccountByJid(Jid.of(share.account)); + } catch (final IllegalArgumentException e) { account = null; } if (account == null) { @@ -305,8 +304,8 @@ public class ShareWithActivity extends XmppActivity implements XmppConnectionSer try { conversation = xmppConnectionService - .findOrCreateConversation(account, Jid.fromString(share.contact), false, true); - } catch (final InvalidJidException e) { + .findOrCreateConversation(account, Jid.of(share.contact), false, true); + } catch (final IllegalArgumentException e) { return; } } diff --git a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java index 16931f994..7be9c090a 100644 --- a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java @@ -74,8 +74,7 @@ import de.pixart.messenger.ui.util.DelayedHintHelper; import de.pixart.messenger.utils.XmppUri; import de.pixart.messenger.xmpp.OnUpdateBlocklist; import de.pixart.messenger.xmpp.XmppConnection; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; import static de.pixart.messenger.ui.SettingsActivity.USE_BUNDLED_EMOJIS; @@ -264,6 +263,18 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU this.binding = DataBindingUtil.setContentView(this, R.layout.activity_start_conversation); this.binding.fab.setOnClickListener((v) -> { if (getSupportActionBar().getSelectedNavigationIndex() == 0) { + String searchString = mSearchEditText != null ? mSearchEditText.getText().toString() : null; + if (searchString != null && !searchString.trim().isEmpty()) { + try { + Jid jid = Jid.of(searchString); + if (jid.getLocal() != null && jid.isBareJid() && jid.getDomain().contains(".")) { + showCreateContactDialog(jid.toString(), null); + return; + } + } catch (IllegalArgumentException ignored) { + //ignore and fall through + } + } showCreateContactDialog(null, null); } else { showCreateConferenceDialog(); @@ -353,7 +364,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU Bookmark bookmark = (Bookmark) conferences.get(position); Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_SEND); - shareIntent.putExtra(Intent.EXTRA_TEXT, "xmpp:" + bookmark.getJid().toBareJid().toString() + "?join"); + shareIntent.putExtra(Intent.EXTRA_TEXT, "xmpp:" + bookmark.getJid().asBareJid().toString() + "?join"); shareIntent.setType("text/plain"); try { startActivity(Intent.createChooser(shareIntent, getText(R.string.share_uri_with))); @@ -510,8 +521,8 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU } final Jid conferenceJid; try { - conferenceJid = Jid.fromString(jid.getText().toString()); - } catch (final InvalidJidException e) { + conferenceJid = Jid.of(jid.getText().toString()); + } catch (final IllegalArgumentException e) { jid.setError(getString(R.string.invalid_jid)); return; } @@ -520,9 +531,9 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU if (account.hasBookmarkFor(conferenceJid)) { jid.setError(getString(R.string.bookmark_already_exists)); } else { - final Bookmark bookmark = new Bookmark(account, conferenceJid.toBareJid()); + final Bookmark bookmark = new Bookmark(account, conferenceJid.asBareJid()); bookmark.setAutojoin(getPreferences().getBoolean("autojoin", getResources().getBoolean(R.bool.autojoin))); - String nick = conferenceJid.getResourcepart(); + String nick = conferenceJid.getResource(); if (nick != null && !nick.isEmpty()) { bookmark.setNick(nick); } @@ -571,7 +582,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU intent.putExtra("multiple", true); intent.putExtra("show_enter_jid", true); intent.putExtra("subject", subject.getText().toString()); - intent.putExtra(EXTRA_ACCOUNT, account.getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, account.getJid().asBareJid().toString()); intent.putExtra(ChooseContactActivity.EXTRA_TITLE_RES_ID, R.string.choose_participants); startActivityForResult(intent, REQUEST_CREATE_CONFERENCE); }); @@ -587,11 +598,11 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU Jid jid; try { if (Config.DOMAIN_LOCK != null) { - jid = Jid.fromParts((String) spinner.getSelectedItem(), Config.DOMAIN_LOCK, null); + jid = Jid.of((String) spinner.getSelectedItem(), Config.DOMAIN_LOCK, null); } else { - jid = Jid.fromString((String) spinner.getSelectedItem()); + jid = Jid.of((String) spinner.getSelectedItem()); } - } catch (final InvalidJidException e) { + } catch (final IllegalArgumentException e) { return null; } return xmppConnectionService.findAccountByJid(jid); @@ -686,14 +697,14 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU String[] toAdd = intent.getStringArrayExtra("contacts"); for (String item : toAdd) { try { - jids.add(Jid.fromString(item)); - } catch (InvalidJidException e) { + jids.add(Jid.of(item)); + } catch (IllegalArgumentException e) { //ignored } } } else { try { - jids.add(Jid.fromString(intent.getStringExtra("contact"))); + jids.add(Jid.of(intent.getStringExtra("contact"))); } catch (Exception e) { //ignored } @@ -769,9 +780,9 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU for (Account account : xmppConnectionService.getAccounts()) { if (account.getStatus() != Account.State.DISABLED) { if (Config.DOMAIN_LOCK != null) { - this.mActivatedAccounts.add(account.getJid().getLocalpart()); + this.mActivatedAccounts.add(account.getJid().getLocal()); } else { - this.mActivatedAccounts.add(account.getJid().toBareJid().toString()); + this.mActivatedAccounts.add(account.getJid().asBareJid().toString()); } } } @@ -839,7 +850,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU switchToConversation(muc, invite.getBody(), false); return true; } else { - showJoinConferenceDialog(invite.getJid().toBareJid().toString()); + showJoinConferenceDialog(invite.getJid().asBareJid().toString()); return false; } } else if (contacts.size() == 0) { @@ -880,7 +891,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU View view = getLayoutInflater().inflate(R.layout.dialog_verify_fingerprints, null); final CheckBox isTrustedSource = view.findViewById(R.id.trusted_source); TextView warning = view.findViewById(R.id.warning); - String jid = contact.getJid().toBareJid().toString(); + String jid = contact.getJid().asBareJid().toString(); SpannableString spannable = new SpannableString(getString(R.string.verifying_omemo_keys_trusted_source, jid, contact.getDisplayName())); int start = spannable.toString().indexOf(jid); if (start >= 0) { diff --git a/src/main/java/de/pixart/messenger/ui/TrustKeysActivity.java b/src/main/java/de/pixart/messenger/ui/TrustKeysActivity.java index 5641fc171..3f97b12f9 100644 --- a/src/main/java/de/pixart/messenger/ui/TrustKeysActivity.java +++ b/src/main/java/de/pixart/messenger/ui/TrustKeysActivity.java @@ -33,8 +33,7 @@ import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.utils.CryptoHelper; import de.pixart.messenger.utils.XmppUri; import de.pixart.messenger.xmpp.OnKeyStatusUpdated; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class TrustKeysActivity extends OmemoActivity implements OnKeyStatusUpdated { private List<Jid> contactJids; @@ -80,8 +79,8 @@ public class TrustKeysActivity extends OmemoActivity implements OnKeyStatusUpdat this.contactJids = new ArrayList<>(); for(String jid : getIntent().getStringArrayExtra("contacts")) { try { - this.contactJids.add(Jid.fromString(jid)); - } catch (InvalidJidException e) { + this.contactJids.add(Jid.of(jid)); + } catch (IllegalArgumentException e) { e.printStackTrace(); } } @@ -226,7 +225,7 @@ public class TrustKeysActivity extends OmemoActivity implements OnKeyStatusUpdat showCameraToast(); } - binding.ownKeysTitle.setText(mAccount.getJid().toBareJid().toString()); + binding.ownKeysTitle.setText(mAccount.getJid().asBareJid().toString()); binding.ownKeysCard.setVisibility(hasOwnKeys ? View.VISIBLE : View.GONE); binding.foreignKeys.setVisibility(hasForeignKeys ? View.VISIBLE : View.GONE); if(hasPendingKeyFetches()) { diff --git a/src/main/java/de/pixart/messenger/ui/UpdaterActivity.java b/src/main/java/de/pixart/messenger/ui/UpdaterActivity.java index f62454510..f9b5ef164 100644 --- a/src/main/java/de/pixart/messenger/ui/UpdaterActivity.java +++ b/src/main/java/de/pixart/messenger/ui/UpdaterActivity.java @@ -1,7 +1,6 @@ package de.pixart.messenger.ui; import android.Manifest; -import android.support.v7.app.AlertDialog; import android.app.ProgressDialog; import android.content.Context; import android.content.DialogInterface; @@ -17,6 +16,7 @@ import android.os.Bundle; import android.os.Environment; import android.os.PowerManager; import android.support.v4.app.ActivityCompat; +import android.support.v7.app.AlertDialog; import android.util.Log; import android.widget.TextView; import android.widget.Toast; diff --git a/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java b/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java index 47355ecba..dea4f3194 100644 --- a/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java +++ b/src/main/java/de/pixart/messenger/ui/UriHandlerActivity.java @@ -16,7 +16,7 @@ import java.util.List; import de.pixart.messenger.R; import de.pixart.messenger.persistance.DatabaseBackend; import de.pixart.messenger.utils.XmppUri; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class UriHandlerActivity extends AppCompatActivity { @@ -102,7 +102,7 @@ public class UriHandlerActivity extends AppCompatActivity { } else if (accounts.contains(xmppUri.getJid())) { intent = new Intent(getApplicationContext(), EditAccountActivity.class); intent.setAction(Intent.ACTION_VIEW); - intent.putExtra("jid", xmppUri.getJid().toBareJid().toString()); + intent.putExtra("jid", xmppUri.getJid().asBareJid().toString()); intent.setData(uri); } else if (xmppUri.isJidValid()) { intent = new Intent(getApplicationContext(), StartConversationActivity.class); diff --git a/src/main/java/de/pixart/messenger/ui/VerifyOTRActivity.java b/src/main/java/de/pixart/messenger/ui/VerifyOTRActivity.java index 83518fcda..2bdbbae97 100644 --- a/src/main/java/de/pixart/messenger/ui/VerifyOTRActivity.java +++ b/src/main/java/de/pixart/messenger/ui/VerifyOTRActivity.java @@ -23,8 +23,7 @@ import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.services.XmppConnectionService; import de.pixart.messenger.utils.CryptoHelper; import de.pixart.messenger.utils.XmppUri; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class VerifyOTRActivity extends XmppActivity implements XmppConnectionService.OnConversationUpdate { @@ -197,11 +196,11 @@ public class VerifyOTRActivity extends XmppActivity implements XmppConnectionSer return false; } try { - this.mConversation = this.xmppConnectionService.find(this.mAccount, Jid.fromString(intent.getExtras().getString("contact"))); + this.mConversation = this.xmppConnectionService.find(this.mAccount, Jid.of(intent.getExtras().getString("contact"))); if (this.mConversation == null) { return false; } - } catch (final InvalidJidException ignored) { + } catch (final IllegalArgumentException ignored) { return false; } this.mode = intent.getIntExtra("mode", MODE_MANUAL_VERIFICATION); diff --git a/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java b/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java index 26a4c0899..07c6e1ff7 100644 --- a/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java +++ b/src/main/java/de/pixart/messenger/ui/WelcomeActivity.java @@ -1,7 +1,6 @@ package de.pixart.messenger.ui; import android.Manifest; -import android.support.v7.app.AlertDialog; import android.app.ProgressDialog; import android.content.DialogInterface; import android.content.Intent; @@ -12,6 +11,7 @@ import android.database.sqlite.SQLiteException; import android.os.Build; import android.os.Bundle; import android.support.v7.app.ActionBar; +import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.LayoutInflater; @@ -118,7 +118,7 @@ public class WelcomeActivity extends XmppActivity { 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("jid", accounts.get(0).getJid().asBareJid().toString()); intent.putExtra("init", true); } else if (accounts.size() >= 1) { intent = new Intent(WelcomeActivity.this, ManageAccountActivity.class); diff --git a/src/main/java/de/pixart/messenger/ui/XmppActivity.java b/src/main/java/de/pixart/messenger/ui/XmppActivity.java index ba03663f3..3e95af5ed 100644 --- a/src/main/java/de/pixart/messenger/ui/XmppActivity.java +++ b/src/main/java/de/pixart/messenger/ui/XmppActivity.java @@ -78,8 +78,7 @@ import de.pixart.messenger.utils.CryptoHelper; import de.pixart.messenger.utils.ExceptionHelper; import de.pixart.messenger.xmpp.OnKeyStatusUpdated; import de.pixart.messenger.xmpp.OnUpdateBlocklist; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public abstract class XmppActivity extends AppCompatActivity { @@ -387,7 +386,7 @@ public abstract class XmppActivity extends AppCompatActivity { if (xmppConnectionService.getAccounts().size() == 1 && !xmppConnectionService.multipleAccounts()) { final Intent intent = new Intent(getApplicationContext(), EditAccountActivity.class); Account mAccount = xmppConnectionService.getAccounts().get(0); - intent.putExtra("jid", mAccount.getJid().toBareJid().toString()); + intent.putExtra("jid", mAccount.getJid().asBareJid().toString()); intent.putExtra("init", false); startActivity(intent); } else { @@ -521,7 +520,7 @@ public abstract class XmppActivity extends AppCompatActivity { public void switchToContactDetails(Contact contact, String messageFingerprint) { Intent intent = new Intent(this, ContactDetailsActivity.class); intent.setAction(ContactDetailsActivity.ACTION_VIEW_CONTACT); - intent.putExtra(EXTRA_ACCOUNT, contact.getAccount().getJid().toBareJid().toString()); + intent.putExtra(EXTRA_ACCOUNT, contact.getAccount().getJid().asBareJid().toString()); intent.putExtra("contact", contact.getJid().toString()); intent.putExtra("fingerprint", messageFingerprint); startActivity(intent); @@ -533,7 +532,7 @@ public abstract class XmppActivity extends AppCompatActivity { public void switchToAccount(Account account, boolean init) { Intent intent = new Intent(this, EditAccountActivity.class); - intent.putExtra("jid", account.getJid().toBareJid().toString()); + intent.putExtra("jid", account.getJid().asBareJid().toString()); intent.putExtra("init", init); if (init) { intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION); @@ -806,8 +805,8 @@ public abstract class XmppActivity extends AppCompatActivity { SessionID id = conversation.getOtrSession().getSessionID(); Jid jid; try { - jid = Jid.fromString(id.getAccountID() + "/" + id.getUserID()); - } catch (InvalidJidException e) { + jid = Jid.of(id.getAccountID() + "/" + id.getUserID()); + } catch (IllegalArgumentException e) { jid = null; } conversation.setNextCounterpart(jid); @@ -831,8 +830,8 @@ public abstract class XmppActivity extends AppCompatActivity { } else if (presences.size() == 1) { String presence = presences.toResourceArray()[0]; try { - conversation.setNextCounterpart(Jid.fromParts(contact.getJid().getLocalpart(), contact.getJid().getDomainpart(), presence)); - } catch (InvalidJidException e) { + conversation.setNextCounterpart(Jid.of(contact.getJid().getLocal(), contact.getJid().getDomain(), presence)); + } catch (IllegalArgumentException e) { conversation.setNextCounterpart(null); } listener.onPresenceSelected(); @@ -882,9 +881,9 @@ public abstract class XmppActivity extends AppCompatActivity { builder.setNegativeButton(R.string.cancel, null); builder.setPositiveButton(R.string.ok, (dialog, which) -> { try { - Jid next = Jid.fromParts(contact.getJid().getLocalpart(), contact.getJid().getDomainpart(), resourceArray[selectedResource.get()]); + Jid next = Jid.of(contact.getJid().getLocal(), contact.getJid().getDomain(), resourceArray[selectedResource.get()]); conversation.setNextCounterpart(next); - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { conversation.setNextCounterpart(null); } listener.onPresenceSelected(); @@ -952,8 +951,8 @@ public abstract class XmppActivity extends AppCompatActivity { private void inviteUser() { Account mAccount = xmppConnectionService.getAccounts().get(0); - String user = mAccount.getJid().getLocalpart().toString(); - String domain = mAccount.getJid().getDomainpart().toString(); + String user = mAccount.getJid().getLocal().toString(); + String domain = mAccount.getJid().getDomain().toString(); String inviteURL = Config.inviteUserURL + user + "/" + domain; String inviteText = getString(R.string.InviteText, user); Intent intent = new Intent(android.content.Intent.ACTION_SEND); @@ -1040,8 +1039,8 @@ public abstract class XmppActivity extends AppCompatActivity { protected Account extractAccount(Intent intent) { String jid = intent != null ? intent.getStringExtra(EXTRA_ACCOUNT) : null; try { - return jid != null ? xmppConnectionService.findAccountByJid(Jid.fromString(jid)) : null; - } catch (InvalidJidException e) { + return jid != null ? xmppConnectionService.findAccountByJid(Jid.of(jid)) : null; + } catch (IllegalArgumentException e) { return null; } } @@ -1100,12 +1099,12 @@ public abstract class XmppActivity extends AppCompatActivity { if (data.getBooleanExtra("multiple", false)) { String[] toAdd = data.getStringArrayExtra("contacts"); for (String item : toAdd) { - invite.jids.add(Jid.fromString(item)); + invite.jids.add(Jid.of(item)); } } else { - invite.jids.add(Jid.fromString(data.getStringExtra("contact"))); + invite.jids.add(Jid.of(data.getStringExtra("contact"))); } - } catch (final InvalidJidException ignored) { + } catch (final IllegalArgumentException ignored) { return null; } return invite; @@ -1123,7 +1122,7 @@ public abstract class XmppActivity extends AppCompatActivity { } return false; } else { - jids.add(conversation.getJid().toBareJid()); + jids.add(conversation.getJid().asBareJid()); return service.createAdhocConference(conversation.getAccount(), null, jids, activity.adhocCallback); } } diff --git a/src/main/java/de/pixart/messenger/ui/adapter/AccountAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/AccountAdapter.java index 81a3017a8..a7c20eb0e 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/AccountAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/AccountAdapter.java @@ -43,9 +43,9 @@ public class AccountAdapter extends ArrayAdapter<Account> { } TextView jid = view.findViewById(R.id.account_jid); if (Config.DOMAIN_LOCK != null) { - jid.setText(account.getJid().getLocalpart()); + jid.setText(account.getJid().getLocal()); } else { - jid.setText(account.getJid().toBareJid().toString()); + jid.setText(account.getJid().asBareJid().toString()); } TextView statusView = view.findViewById(R.id.account_status); ImageView imageView = view.findViewById(R.id.account_image); @@ -99,7 +99,7 @@ public class AccountAdapter extends ArrayAdapter<Account> { imageView.setImageBitmap(bm); imageView.setBackgroundColor(0x00000000); } else { - imageView.setBackgroundColor(UIHelper.getColorForName(account.getJid().toBareJid().toString())); + imageView.setBackgroundColor(UIHelper.getColorForName(account.getJid().asBareJid().toString())); imageView.setImageDrawable(null); final BitmapWorkerTask task = new BitmapWorkerTask(imageView); final AsyncDrawable asyncDrawable = new AsyncDrawable(activity.getResources(), null, task); diff --git a/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java index 16ad8f6a0..ad1f9df7b 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java @@ -85,7 +85,7 @@ public class ConversationAdapter extends ArrayAdapter<Conversation> { if (conversation.getMode() == Conversation.MODE_SINGLE || activity.useSubjectToIdentifyConference()) { viewHolder.name.setText(EmojiWrapper.transform(conversation.getName())); } else { - viewHolder.name.setText(conversation.getJid().toBareJid().toString()); + viewHolder.name.setText(conversation.getJid().asBareJid().toString()); } Message message = conversation.getLatestMessage(); diff --git a/src/main/java/de/pixart/messenger/ui/adapter/ListItemAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/ListItemAdapter.java index 2df1e5b0f..f25e6e51d 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/ListItemAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/ListItemAdapter.java @@ -164,7 +164,7 @@ public class ListItemAdapter extends ArrayAdapter<ListItem> { imageView.setImageBitmap(bm); imageView.setBackgroundColor(0x00000000); } else { - String seed = item.getJid() != null ? item.getJid().toBareJid().toString() : item.getDisplayName(); + String seed = item.getJid() != null ? item.getJid().asBareJid().toString() : item.getDisplayName(); imageView.setBackgroundColor(UIHelper.getColorForName(seed)); imageView.setImageDrawable(null); final BitmapWorkerTask task = new BitmapWorkerTask(imageView); diff --git a/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java index 9f09531e1..d243e60bd 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java @@ -576,7 +576,7 @@ public class MessageAdapter extends ArrayAdapter<Message> implements CopyTextVie } else { final String to; if (message.getCounterpart() != null) { - to = message.getCounterpart().getResourcepart(); + to = message.getCounterpart().getResource(); } else { to = ""; } diff --git a/src/main/java/de/pixart/messenger/ui/forms/FormJidSingleFieldWrapper.java b/src/main/java/de/pixart/messenger/ui/forms/FormJidSingleFieldWrapper.java index b6aeaf344..b011cc77b 100644 --- a/src/main/java/de/pixart/messenger/ui/forms/FormJidSingleFieldWrapper.java +++ b/src/main/java/de/pixart/messenger/ui/forms/FormJidSingleFieldWrapper.java @@ -7,8 +7,7 @@ import java.util.List; import de.pixart.messenger.R; import de.pixart.messenger.xmpp.forms.Field; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class FormJidSingleFieldWrapper extends FormTextFieldWrapper { @@ -23,8 +22,8 @@ public class FormJidSingleFieldWrapper extends FormTextFieldWrapper { String value = getValue(); if (!value.isEmpty()) { try { - Jid.fromString(value); - } catch (InvalidJidException e) { + Jid.of(value); + } catch (IllegalArgumentException e) { editText.setError(context.getString(R.string.invalid_jid)); editText.requestFocus(); return false; diff --git a/src/main/java/de/pixart/messenger/ui/util/PresenceSelector.java b/src/main/java/de/pixart/messenger/ui/util/PresenceSelector.java index bc72cd889..ce6ff84e7 100644 --- a/src/main/java/de/pixart/messenger/ui/util/PresenceSelector.java +++ b/src/main/java/de/pixart/messenger/ui/util/PresenceSelector.java @@ -43,8 +43,7 @@ import de.pixart.messenger.entities.Contact; import de.pixart.messenger.entities.Conversation; import de.pixart.messenger.entities.Presences; import de.pixart.messenger.utils.CryptoHelper; -import de.pixart.messenger.xmpp.jid.InvalidJidException; -import de.pixart.messenger.xmpp.jid.Jid; +import rocks.xmpp.addr.Jid; public class PresenceSelector { @@ -89,9 +88,9 @@ public class PresenceSelector { builder.setNegativeButton(R.string.cancel, null); builder.setPositiveButton(R.string.ok, (dialog, which) -> { try { - Jid next = Jid.fromParts(contact.getJid().getLocalpart(), contact.getJid().getDomainpart(), resourceArray[selectedResource.get()]); + Jid next = Jid.of(contact.getJid().getLocal(), contact.getJid().getDomain(), resourceArray[selectedResource.get()]); conversation.setNextCounterpart(next); - } catch (InvalidJidException e) { + } catch (IllegalArgumentException e) { conversation.setNextCounterpart(null); } listener.onPresenceSelected(); |