aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
diff options
context:
space:
mode:
authorChristian S <christian@pix-art.de>2015-09-12 10:27:21 +0200
committerChristian S <christian@pix-art.de>2015-09-12 10:27:21 +0200
commit07c1571e1eb32c1c36fe80bdb96caf17c3824dc4 (patch)
tree657fba8eebcc988c833a317834cdb30dddfd4b02 /src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
parentc90ca66c58c37836c13075c794b1e7cad3813984 (diff)
parent15d1623ec6f1fbf6af939a5d2403e3dcc7e6839f (diff)
Version 1.6.9
Diffstat (limited to 'src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java')
-rw-r--r--src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java b/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
index 206b1864b..17a5c7f7d 100644
--- a/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java
@@ -26,11 +26,10 @@ import android.widget.TextView;
import android.widget.Toast;
import eu.siacs.conversations.Config;
import org.whispersystems.libaxolotl.IdentityKey;
-
import java.util.Set;
-
import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
+import eu.siacs.conversations.crypto.axolotl.AxolotlService;
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.services.XmppConnectionService.OnAccountUpdate;
import eu.siacs.conversations.ui.adapter.KnownHostsAdapter;
@@ -540,7 +539,12 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
this.mServerInfoSm.setText(R.string.server_info_unavailable);
}
if (features.pep()) {
- this.mServerInfoPep.setText(R.string.server_info_available);
+ AxolotlService axolotlService = this.mAccount.getAxolotlService();
+ if (axolotlService != null && axolotlService.isPepBroken()) {
+ this.mServerInfoPep.setText(R.string.server_info_broken);
+ } else {
+ this.mServerInfoPep.setText(R.string.server_info_available);
+ }
} else {
this.mServerInfoPep.setText(R.string.server_info_unavailable);
}
@@ -572,7 +576,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
} else {
this.mOtrFingerprintBox.setVisibility(View.GONE);
}
- final String axolotlFingerprint = this.mAccount.getAxolotlService().getOwnPublicKey().getFingerprint();
+ final String axolotlFingerprint = this.mAccount.getAxolotlService().getOwnFingerprint();
if (axolotlFingerprint != null) {
this.mAxolotlFingerprintBox.setVisibility(View.VISIBLE);
this.mAxolotlFingerprint.setText(CryptoHelper.prettifyFingerprint(axolotlFingerprint));
@@ -607,16 +611,15 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
} else {
this.mAxolotlFingerprintBox.setVisibility(View.GONE);
}
- final IdentityKey ownKey = mAccount.getAxolotlService().getOwnPublicKey();
+ final String ownFingerprint = mAccount.getAxolotlService().getOwnFingerprint();
boolean hasKeys = false;
keys.removeAllViews();
- for(final IdentityKey identityKey : xmppConnectionService.databaseBackend.loadIdentityKeys(
- mAccount, mAccount.getJid().toBareJid().toString())) {
- if(ownKey.equals(identityKey)) {
+ for (final String fingerprint : mAccount.getAxolotlService().getFingerprintsForOwnSessions()) {
+ if(ownFingerprint.equals(fingerprint)) {
continue;
}
- boolean highlight = identityKey.getFingerprint().replaceAll("\\s", "").equals(messageFingerprint);
- hasKeys |= addFingerprintRow(keys, mAccount, identityKey, highlight);
+ boolean highlight = fingerprint.equals(messageFingerprint);
+ hasKeys |= addFingerprintRow(keys, mAccount, fingerprint, highlight);
}
if (hasKeys) {
keysCard.setVisibility(View.VISIBLE);