aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src
diff options
context:
space:
mode:
Diffstat (limited to 'OpenKeychain/src')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ContactHelper.java27
-rw-r--r--OpenKeychain/src/main/res/values/colors.xml2
-rw-r--r--OpenKeychain/src/main/res/values/strings.xml3
3 files changed, 23 insertions, 9 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ContactHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ContactHelper.java
index 60bc846b2..3cf201ed7 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ContactHelper.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/util/ContactHelper.java
@@ -57,10 +57,20 @@ public class ContactHelper {
KeychainContract.KeyRings.MASTER_KEY_ID,
KeychainContract.KeyRings.EXPIRY,
KeychainContract.KeyRings.IS_REVOKED};
+
+ public static final int INDEX_USER_ID = 0;
+ public static final int INDEX_FINGERPRINT = 1;
+ public static final int INDEX_KEY_ID = 2;
+ public static final int INDEX_MASTER_KEY_ID = 3;
+ public static final int INDEX_EXPIRY = 4;
+ public static final int INDEX_IS_REVOKED = 5;
+
public static final String[] USER_IDS_PROJECTION = new String[]{
UserPackets.USER_ID
};
+ public static final int INDEX_USER_IDS_USER_ID = 0;
+
public static final String NON_REVOKED_SELECTION = UserPackets.IS_REVOKED + "=0";
public static final String[] ID_PROJECTION = new String[]{ContactsContract.RawContacts._ID};
@@ -301,23 +311,26 @@ public class ContactHelper {
null, null, null);
if (cursor != null) {
while (cursor.moveToNext()) {
- String[] primaryUserId = KeyRing.splitUserId(cursor.getString(0));
- String fingerprint = KeyFormattingUtils.convertFingerprintToHex(cursor.getBlob(1));
+ String[] primaryUserId = KeyRing.splitUserId(cursor.getString(INDEX_USER_ID));
+ String fingerprint = KeyFormattingUtils.convertFingerprintToHex(cursor.getBlob(INDEX_FINGERPRINT));
contactFingerprints.remove(fingerprint);
- String keyIdShort = KeyFormattingUtils.convertKeyIdToHexShort(cursor.getLong(2));
- long masterKeyId = cursor.getLong(3);
- boolean isExpired = !cursor.isNull(4) && new Date(cursor.getLong(4) * 1000).before(new Date());
- boolean isRevoked = cursor.getInt(5) > 0;
+ String keyIdShort = KeyFormattingUtils.convertKeyIdToHexShort(cursor.getLong(INDEX_KEY_ID));
+ long masterKeyId = cursor.getLong(INDEX_MASTER_KEY_ID);
+ boolean isExpired = !cursor.isNull(INDEX_EXPIRY)
+ && new Date(cursor.getLong(INDEX_EXPIRY) * 1000).before(new Date());
+ boolean isRevoked = cursor.getInt(INDEX_IS_REVOKED) > 0;
int rawContactId = findRawContactId(resolver, fingerprint);
ArrayList<ContentProviderOperation> ops = new ArrayList<>();
+ Log.d(Constants.TAG, "raw contact id: "+rawContactId);
+
// Do not store expired or revoked keys in contact db - and remove them if they already exist
if (isExpired || isRevoked) {
if (rawContactId != -1) {
resolver.delete(ContactsContract.RawContacts.CONTENT_URI, ID_SELECTION,
new String[]{Integer.toString(rawContactId)});
}
- } else {
+ } else if (primaryUserId[0] != null) {
// Create a new rawcontact with corresponding key if it does not exist yet
if (rawContactId == -1) {
diff --git a/OpenKeychain/src/main/res/values/colors.xml b/OpenKeychain/src/main/res/values/colors.xml
index c49e06b4b..8c5358fd0 100644
--- a/OpenKeychain/src/main/res/values/colors.xml
+++ b/OpenKeychain/src/main/res/values/colors.xml
@@ -13,6 +13,8 @@
<!-- Other colors -->
+ <color name="black">#000000</color>
+
<color name="primary_light">#C8E6C9</color>
<color name="fab">@color/accent</color>
<color name="fab_pressed">#1976D2</color>
diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml
index 2d599e984..ca6ce1f7d 100644
--- a/OpenKeychain/src/main/res/values/strings.xml
+++ b/OpenKeychain/src/main/res/values/strings.xml
@@ -359,8 +359,7 @@
<string name="progress_con_reimport">"consolidate: reimporting…"</string>
<!-- action strings -->
- <string name="hint_keyserver_search_hint">"Name/Email/Key ID…"</string>
- <string name="hint_cloud_search_hint">"Name/Email/Proof/Key…"</string>
+ <string name="hint_cloud_search_hint">"Search via Name, Email…"</string>
<!-- key bit length selections -->
<string name="key_size_512">"512"</string>