aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2016-11-18 22:31:58 +0100
committerChristian Schneppe <christian@pix-art.de>2016-11-18 22:31:58 +0100
commitd9659fc3667cff043c922c5132f52bd5defc36fe (patch)
tree71a49839541351ebb26425caf8eb76d6aa958746 /src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
parent0faec4ae1bc996d078cba24929646480206c40bf (diff)
parse omemo fingerprints from uris
Diffstat (limited to '')
-rw-r--r--src/main/java/de/pixart/messenger/ui/StartConversationActivity.java19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
index f163cef72..83ab06b62 100644
--- a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
@@ -396,11 +396,11 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU
}
@SuppressLint("InflateParams")
- protected void showCreateContactDialog(final String prefilledJid, final String fingerprint) {
+ protected void showCreateContactDialog(final String prefilledJid, final Invite invite) {
EnterJidDialog dialog = new EnterJidDialog(
this, mKnownHosts, mActivatedAccounts,
getString(R.string.create_contact), getString(R.string.create),
- prefilledJid, null, fingerprint == null
+ prefilledJid, null, !invite.hasFingerprints()
);
dialog.setOnEnterJidDialogPositiveListener(new EnterJidDialog.OnEnterJidDialogPositiveListener() {
@@ -419,7 +419,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU
if (contact.showInRoster()) {
throw new EnterJidDialog.JidError(getString(R.string.contact_already_exists));
} else {
- contact.addOtrFingerprint(fingerprint);
+ //contact.addOtrFingerprint(fingerprint);
xmppConnectionService.createContact(contact);
switchToConversation(contact);
return true;
@@ -841,6 +841,10 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU
}
private boolean handleJid(Invite invite) {
+ Log.d(Config.LOGTAG,"handling invite for "+invite.getJid());
+ for(XmppUri.Fingerprint fp : invite.getFingerprints()) {
+ Log.d(Config.LOGTAG,fp.toString());
+ }
List<Contact> contacts = xmppConnectionService.findContacts(invite.getJid());
if (invite.isMuc()) {
Conversation muc = xmppConnectionService.findFirstMuc(invite.getJid());
@@ -852,16 +856,19 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU
return false;
}
} else if (contacts.size() == 0) {
- showCreateContactDialog(invite.getJid().toString(), invite.getFingerprint());
+ showCreateContactDialog(invite.getJid().toString(), invite);
return false;
} else if (contacts.size() == 1) {
Contact contact = contacts.get(0);
- if (invite.getFingerprint() != null) {
+ if (invite.hasFingerprints()) {
+ xmppConnectionService.verifyFingerprints(contact,invite.getFingerprints());
+ }
+ /*if (invite.getFingerprint() != null) {
if (contact.addOtrFingerprint(invite.getFingerprint())) {
Log.d(Config.LOGTAG, "added new fingerprint");
xmppConnectionService.syncRosterToDisk(contact.getAccount());
}
- }
+ }*/
switchToConversation(contact);
return true;
} else {