aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2015-09-11 03:56:07 +0200
committerVincent Breitmoser <valodim@mugenguild.com>2015-09-11 03:56:07 +0200
commit486117d9de8618c1ecfb2a592c781fc43f1cc886 (patch)
tree08bbd7832fbcc3f38c688aa5185886cf74b526e5 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider
parent476d153db23eaf3283bb796e50e784b89354d1eb (diff)
downloadopen-keychain-486117d9de8618c1ecfb2a592c781fc43f1cc886.tar.gz
open-keychain-486117d9de8618c1ecfb2a592c781fc43f1cc886.tar.bz2
open-keychain-486117d9de8618c1ecfb2a592c781fc43f1cc886.zip
sort confirmed keys before unconfirmed primary ones (OKC-01-011)
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java
index 6f452bfd1..a6823d3ac 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java
@@ -771,6 +771,11 @@ public class ProviderHelper {
if (type != o.type) {
return type == null ? -1 : 1;
}
+ // if one is *trusted* but the other isn't, that one comes first
+ // this overrides the primary attribute, even!
+ if ( (trustedCerts.size() == 0) != (o.trustedCerts.size() == 0) ) {
+ return trustedCerts.size() > o.trustedCerts.size() ? -1 : 1;
+ }
// if one key is primary but the other isn't, the primary one always comes first
if (isPrimary != o.isPrimary) {
return isPrimary ? -1 : 1;