diff options
author | Christian Schneppe <christian@pix-art.de> | 2017-09-04 20:59:35 +0200 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2017-09-04 20:59:35 +0200 |
commit | 494fb2d3275fe990450c6c1de9a8435dcb317c2f (patch) | |
tree | 9afc92be0ccfa1943c8fde0fc953087b6bd1adbc /src/main/java/de/pixart/messenger/parser/MessageParser.java | |
parent | a558ea31ea2d69e4e6777b6ed56fad1e68de1880 (diff) |
made avatar cache cleaning more efficent after name changes
Diffstat (limited to 'src/main/java/de/pixart/messenger/parser/MessageParser.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/parser/MessageParser.java | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/main/java/de/pixart/messenger/parser/MessageParser.java b/src/main/java/de/pixart/messenger/parser/MessageParser.java index 25190b32d..54a4571cc 100644 --- a/src/main/java/de/pixart/messenger/parser/MessageParser.java +++ b/src/main/java/de/pixart/messenger/parser/MessageParser.java @@ -280,12 +280,13 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece } } } else if ("http://jabber.org/protocol/nick".equals(node)) { - Element i = items.findChild("item"); - Element nick = i == null ? null : i.findChild("nick", "http://jabber.org/protocol/nick"); - if (nick != null && nick.getContent() != null) { + final Element i = items.findChild("item"); + final String nick = i == null ? null : i.findChildContent("nick", Namespace.NICK); + if (nick != null) { Contact contact = account.getRoster().getContact(from); - contact.setPresenceName(nick.getContent()); - mXmppConnectionService.getAvatarService().clear(account); + if (contact.setPresenceName(nick)) { + mXmppConnectionService.getAvatarService().clear(contact); + } mXmppConnectionService.updateConversationUi(); mXmppConnectionService.updateAccountUi(); } @@ -707,10 +708,12 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece parseEvent(event, original.getFrom(), account); } - String nick = packet.findChildContent("nick", "http://jabber.org/protocol/nick"); + final String nick = packet.findChildContent("nick", Namespace.NICK); if (nick != null) { Contact contact = account.getRoster().getContact(from); - contact.setPresenceName(nick); + if (contact.setPresenceName(nick)) { + mXmppConnectionService.getAvatarService().clear(contact); + } } } |