diff options
author | iNPUTmice <daniel@gultsch.de> | 2014-11-21 20:02:13 +0100 |
---|---|---|
committer | iNPUTmice <daniel@gultsch.de> | 2014-11-21 20:02:13 +0100 |
commit | 81a1a48b8d09ad509660dac7e7c973628804f730 (patch) | |
tree | 0f8ad7d8065ffcf4fe85b08dead5808be01da5aa /src/main/java/eu/siacs/conversations/parser | |
parent | 97344c079ad1951c538402243933f3ebe1349473 (diff) |
update action bar with conversations updates as well
Diffstat (limited to 'src/main/java/eu/siacs/conversations/parser')
-rw-r--r-- | src/main/java/eu/siacs/conversations/parser/PresenceParser.java | 35 |
1 files changed, 10 insertions, 25 deletions
diff --git a/src/main/java/eu/siacs/conversations/parser/PresenceParser.java b/src/main/java/eu/siacs/conversations/parser/PresenceParser.java index 8b367970..12167a1e 100644 --- a/src/main/java/eu/siacs/conversations/parser/PresenceParser.java +++ b/src/main/java/eu/siacs/conversations/parser/PresenceParser.java @@ -22,30 +22,15 @@ public class PresenceParser extends AbstractParser implements public void parseConferencePresence(PresencePacket packet, Account account) { PgpEngine mPgpEngine = mXmppConnectionService.getPgpEngine(); - if (packet.hasChild("x", "http://jabber.org/protocol/muc#user")) { - final Conversation muc = packet.getFrom() == null ? null : mXmppConnectionService.find( - account, - packet.getFrom().toBareJid()); - if (muc != null) { - boolean before = muc.getMucOptions().online(); - muc.getMucOptions().processPacket(packet, mPgpEngine); - if (before != muc.getMucOptions().online()) { - mXmppConnectionService.updateConversationUi(); - } - mXmppConnectionService.getAvatarService().clear(muc); - } - } else if (packet.hasChild("x", "http://jabber.org/protocol/muc")) { - final Conversation conversation = mXmppConnectionService.find(account, - packet.getFrom().toBareJid()); - if (conversation != null) { - final MucOptions mucOptions = conversation.getMucOptions(); - boolean before = mucOptions.online(); - int count = mucOptions.getUsers().size(); - mucOptions.processPacket(packet, mPgpEngine); - mXmppConnectionService.getAvatarService().clear(conversation); - if (before != mucOptions.online() || (mucOptions.online() && count != mucOptions.getUsers().size())) { - mXmppConnectionService.updateConversationUi(); - } + final Conversation conversation = packet.getFrom() == null ? null : mXmppConnectionService.find(account, packet.getFrom().toBareJid()); + if (conversation != null) { + final MucOptions mucOptions = conversation.getMucOptions(); + boolean before = mucOptions.online(); + int count = mucOptions.getUsers().size(); + mucOptions.processPacket(packet, mPgpEngine); + mXmppConnectionService.getAvatarService().clear(conversation); + if (before != mucOptions.online() || (mucOptions.online() && count != mucOptions.getUsers().size())) { + mXmppConnectionService.updateConversationUi(); } } } @@ -56,7 +41,7 @@ public class PresenceParser extends AbstractParser implements if (packet.getFrom() == null) { return; } - final Jid from = packet.getFrom(); + final Jid from = packet.getFrom(); String type = packet.getAttribute("type"); if (from.toBareJid().equals(account.getJid().toBareJid())) { if (!from.isBareJid()) { |