diff options
author | Daniel Gultsch <daniel@gultsch.de> | 2016-06-30 23:08:55 +0200 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2016-07-01 16:26:04 +0200 |
commit | f0151ac61a67df4a630c01a37f7a51142b9a9ea1 (patch) | |
tree | 6e0a2edcdb4da28f5c154cccfb3099872188c21f /src/main/java/eu/siacs/conversations/entities/Presences.java | |
parent | 63731c4567806d7809b4486fc44dd7ca954199a9 (diff) |
use dnd as overriding status
Diffstat (limited to '')
-rw-r--r-- | src/main/java/eu/siacs/conversations/entities/Presences.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/eu/siacs/conversations/entities/Presences.java b/src/main/java/eu/siacs/conversations/entities/Presences.java index b3e8966a7..b9e3e3ab1 100644 --- a/src/main/java/eu/siacs/conversations/entities/Presences.java +++ b/src/main/java/eu/siacs/conversations/entities/Presences.java @@ -30,11 +30,18 @@ public class Presences { } } - public Presence getMostAvailablePresence() { + public Presence.Status getShownStatus() { + Presence.Status status = Presence.Status.OFFLINE; synchronized (this.presences) { - if (presences.size() < 1) { return null; } - return Collections.min(presences.values()); + for(Presence p : presences.values()) { + if (p.getStatus() == Presence.Status.DND) { + return p.getStatus(); + } else if (p.getStatus().compareTo(status) < 0){ + status = p.getStatus(); + } + } } + return status; } public int size() { |