mirror of
https://github.com/moparisthebest/open-keychain
synced 2024-11-30 04:22:18 -05:00
Merge branch 'development' of github.com:open-keychain/open-keychain into development
This commit is contained in:
commit
b24ff10c43
@ -118,8 +118,6 @@ public class KeychainApplication extends Application {
|
|||||||
* @param context
|
* @param context
|
||||||
*/
|
*/
|
||||||
public static void setupAccountAsNeeded(Context context) {
|
public static void setupAccountAsNeeded(Context context) {
|
||||||
// only enabled for Jelly Bean because we need some newer methods in our sync adapter
|
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
|
|
||||||
try {
|
try {
|
||||||
AccountManager manager = AccountManager.get(context);
|
AccountManager manager = AccountManager.get(context);
|
||||||
Account[] accounts = manager.getAccountsByType(Constants.ACCOUNT_TYPE);
|
Account[] accounts = manager.getAccountsByType(Constants.ACCOUNT_TYPE);
|
||||||
@ -137,7 +135,6 @@ public class KeychainApplication extends Application {
|
|||||||
Toast.makeText(context, R.string.reinstall_openkeychain, Toast.LENGTH_LONG).show();
|
Toast.makeText(context, R.string.reinstall_openkeychain, Toast.LENGTH_LONG).show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void brandGlowEffect(Context context, int brandColor) {
|
static void brandGlowEffect(Context context, int brandColor) {
|
||||||
// no hack on Android 5
|
// no hack on Android 5
|
||||||
|
@ -70,6 +70,8 @@ public class ImportKeysList extends ArrayList<ImportKeysListEntry> {
|
|||||||
modified = true;
|
modified = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// keep track if this key result is from a HKP keyserver
|
||||||
|
boolean incomingFromHkpServer = true;
|
||||||
// we’re going to want to try to fetch the key from everywhere we found it, so remember
|
// we’re going to want to try to fetch the key from everywhere we found it, so remember
|
||||||
// all the origins
|
// all the origins
|
||||||
for (String origin : incoming.getOrigins()) {
|
for (String origin : incoming.getOrigins()) {
|
||||||
@ -78,13 +80,24 @@ public class ImportKeysList extends ArrayList<ImportKeysListEntry> {
|
|||||||
// to work properly, Keybase-sourced entries need to pass along the extra
|
// to work properly, Keybase-sourced entries need to pass along the extra
|
||||||
if (KeybaseKeyserver.ORIGIN.equals(origin)) {
|
if (KeybaseKeyserver.ORIGIN.equals(origin)) {
|
||||||
existing.setExtraData(incoming.getExtraData());
|
existing.setExtraData(incoming.getExtraData());
|
||||||
|
// one of the origins is not a HKP keyserver
|
||||||
|
incomingFromHkpServer = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ArrayList<String> incomingIDs = incoming.getUserIds();
|
ArrayList<String> incomingIDs = incoming.getUserIds();
|
||||||
ArrayList<String> existingIDs = existing.getUserIds();
|
ArrayList<String> existingIDs = existing.getUserIds();
|
||||||
for (String incomingID : incomingIDs) {
|
for (String incomingID : incomingIDs) {
|
||||||
if (!existingIDs.contains(incomingID)) {
|
if (!existingIDs.contains(incomingID)) {
|
||||||
|
// prepend HKP server results to the start of the list,
|
||||||
|
// so that the UI (for cloud key search, which is picking the first list item)
|
||||||
|
// shows the right main email address, as mail addresses returned by HKP servers
|
||||||
|
// are preferred over keybase.io IDs
|
||||||
|
if (incomingFromHkpServer) {
|
||||||
|
existingIDs.add(0, incomingID);
|
||||||
|
} else {
|
||||||
existingIDs.add(incomingID);
|
existingIDs.add(incomingID);
|
||||||
|
}
|
||||||
modified = true;
|
modified = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user