diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java index cba2e6648..b118c3ad0 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyTrustFragment.java @@ -271,8 +271,6 @@ public class ViewKeyTrustFragment extends LoaderFragment implements Proof[] proofsFor = proofs.get(proofType).toArray(x); if (proofsFor.length > 0) { SpannableStringBuilder ssb = new SpannableStringBuilder(); - ssb.append(getProofNarrative(proofType)).append(" "); - int i = 0; while (i < proofsFor.length - 1) { appendProofLinks(ssb, fingerprint, proofsFor[i]); @@ -280,7 +278,7 @@ public class ViewKeyTrustFragment extends LoaderFragment implements i++; } appendProofLinks(ssb, fingerprint, proofsFor[i]); - proofList.add(ssb); + proofList.add(formatSpannableString(ssb, getProofNarrative(proofType))); } } @@ -290,6 +288,21 @@ public class ViewKeyTrustFragment extends LoaderFragment implements return new ResultPage(getString(R.string.key_trust_results_prefix), proofList); } + private SpannableStringBuilder formatSpannableString(SpannableStringBuilder proofLinks,String proofType){ + //Formatting SpannableStringBuilder with String.format() causes the links to stop working. + //This method is to insert the links while reserving the links + + SpannableStringBuilder ssb = new SpannableStringBuilder(); + ssb.append(proofType); + if(proofType.contains("%s")){ + int i = proofType.indexOf("%s"); + ssb.replace(i,i+2,proofLinks); + } + else ssb.append(proofLinks); + + return ssb; + } + private SpannableStringBuilder appendProofLinks(SpannableStringBuilder ssb, final String fingerprint, final Proof proof) throws KeybaseException { int startAt = ssb.length(); String handle = proof.getHandle(); diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml index c1aced533..0c394bda7 100644 --- a/OpenKeychain/src/main/res/values/strings.xml +++ b/OpenKeychain/src/main/res/values/strings.xml @@ -658,14 +658,14 @@ "Note: Keybase.io proofs are an experimental feature of OpenKeychain. We encourage you to scan QR Codes or exchange keys via NFC in addition to confirming them." - "Posts to Twitter as" - "Is known on GitHub as" - "Controls the domain name(s)" - "Can post to the Web site(s)" - "Posts to Reddit as" - "Is known on Coinbase as" - "Posts to Hacker News as" - "Unknown proof type" + "Posts to Twitter as %s" + "Is known on GitHub as %s" + "Controls the domain name(s) %s" + "Can post to the Web site(s) %s" + "Posts to Reddit as %s" + "Is known on Coinbase as %s" + "Posts to Hacker News as %s" + "Unknown proof type %s" "Unfortunately this proof cannot be verified." "Unrecognized problem with proof checker" "Problem with proof"