Change shuffle to rotate, and when merging ImportKeysList entries, if either side is revoked/expired, the merge reflects that
This commit is contained in:
@@ -50,15 +50,23 @@ public class ImportKeysList extends ArrayList<ImportKeysListEntry> {
|
|||||||
private synchronized boolean addOrMerge(ImportKeysListEntry toAdd) {
|
private synchronized boolean addOrMerge(ImportKeysListEntry toAdd) {
|
||||||
for (ImportKeysListEntry existing : this) {
|
for (ImportKeysListEntry existing : this) {
|
||||||
if (toAdd.hasSameKeyAs(existing)) {
|
if (toAdd.hasSameKeyAs(existing)) {
|
||||||
return mergeIDs(toAdd, existing);
|
return mergeDupes(toAdd, existing);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return super.add(toAdd);
|
return super.add(toAdd);
|
||||||
}
|
}
|
||||||
|
|
||||||
// being a little anal about the ArrayList#addAll contract here
|
// being a little anal about the ArrayList#addAll contract here
|
||||||
private boolean mergeIDs(ImportKeysListEntry incoming, ImportKeysListEntry existing) {
|
private boolean mergeDupes(ImportKeysListEntry incoming, ImportKeysListEntry existing) {
|
||||||
boolean modified = false;
|
boolean modified = false;
|
||||||
|
if (incoming.isRevoked()) {
|
||||||
|
existing.setRevoked(true);
|
||||||
|
modified = true;
|
||||||
|
}
|
||||||
|
if (incoming.isExpired()) {
|
||||||
|
existing.setExpired(true);
|
||||||
|
modified = true;
|
||||||
|
}
|
||||||
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) {
|
||||||
|
|||||||
@@ -65,6 +65,8 @@ public class KeybaseKeyserver extends Keyserver {
|
|||||||
entry.setQuery(mQuery);
|
entry.setQuery(mQuery);
|
||||||
entry.setOrigin(ORIGIN);
|
entry.setOrigin(ORIGIN);
|
||||||
|
|
||||||
|
entry.setRevoked(false); // keybase doesn’t say anything about revoked keys
|
||||||
|
|
||||||
String username = match.getUsername();
|
String username = match.getUsername();
|
||||||
String fullName = match.getFullName();
|
String fullName = match.getFullName();
|
||||||
String fingerprint = match.getFingerprint();
|
String fingerprint = match.getFingerprint();
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ public class PreferencesKeyServerActivity extends ActionBarActivity implements O
|
|||||||
private LayoutInflater mInflater;
|
private LayoutInflater mInflater;
|
||||||
private ViewGroup mEditors;
|
private ViewGroup mEditors;
|
||||||
private View mAdd;
|
private View mAdd;
|
||||||
private View mShuffle;
|
private View mRotate;
|
||||||
private TextView mTitle;
|
private TextView mTitle;
|
||||||
private TextView mSummary;
|
private TextView mSummary;
|
||||||
|
|
||||||
@@ -82,8 +82,8 @@ public class PreferencesKeyServerActivity extends ActionBarActivity implements O
|
|||||||
mAdd = findViewById(R.id.add);
|
mAdd = findViewById(R.id.add);
|
||||||
mAdd.setOnClickListener(this);
|
mAdd.setOnClickListener(this);
|
||||||
|
|
||||||
mShuffle = findViewById(R.id.shuffle);
|
mRotate = findViewById(R.id.rotate);
|
||||||
mShuffle.setOnClickListener(new OnClickListener() {
|
mRotate.setOnClickListener(new OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View view) {
|
public void onClick(View view) {
|
||||||
Vector<String> servers = serverList();
|
Vector<String> servers = serverList();
|
||||||
|
|||||||
@@ -39,13 +39,13 @@
|
|||||||
android:textAppearance="?android:attr/textAppearanceSmall" />
|
android:textAppearance="?android:attr/textAppearanceSmall" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/shuffle"
|
android:id="@+id/rotate"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="31dp"
|
android:layout_height="31dp"
|
||||||
android:layout_gravity="center_vertical"
|
android:layout_gravity="center_vertical"
|
||||||
android:layout_marginLeft="4dip"
|
android:layout_marginLeft="4dip"
|
||||||
android:layout_marginRight="6dip"
|
android:layout_marginRight="6dip"
|
||||||
android:text="shuffle"
|
android:text="rotate"
|
||||||
android:textColor="#ffffffff"
|
android:textColor="#ffffffff"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
android:paddingTop="2dp"
|
android:paddingTop="2dp"
|
||||||
|
|||||||
Reference in New Issue
Block a user