From cdee91363c11b2eae920f7ebf443c022674fbb2c Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Mon, 4 Jul 2016 19:30:19 +0200 Subject: simplified muc users ordering --- .../siacs/conversations/entities/MucOptions.java | 23 +++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/main/java/eu/siacs/conversations/entities/MucOptions.java b/src/main/java/eu/siacs/conversations/entities/MucOptions.java index ec21ab80..0ae8b279 100644 --- a/src/main/java/eu/siacs/conversations/entities/MucOptions.java +++ b/src/main/java/eu/siacs/conversations/entities/MucOptions.java @@ -301,17 +301,18 @@ public class MucOptions { } else if (getAffiliation().outranks(another.getAffiliation())) { return -1; } else { - Contact ourContact = getContact(); - Contact anotherContact = another.getContact(); - if (ourContact != null && anotherContact != null) { - return ourContact.compareTo(anotherContact); - } else if (ourContact == null && anotherContact != null) { - return getName().compareToIgnoreCase(anotherContact.getDisplayName()); - } else if (ourContact != null) { - return ourContact.getDisplayName().compareToIgnoreCase(another.getName()); - } else { - return getName().compareToIgnoreCase(another.getName()); - } + return getComparableName().compareToIgnoreCase(another.getComparableName()); + } + } + + + private String getComparableName() { + Contact contact = getContact(); + if (contact != null) { + return contact.getDisplayName(); + } else { + String name = getName(); + return name == null ? "" : name; } } -- cgit v1.2.3