aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2017-08-01 12:40:05 +0200
committerChristian Schneppe <christian@pix-art.de>2017-08-01 12:40:05 +0200
commite8c191dcd2e97977ee6a5e2738295d22e411ca9e (patch)
tree8c613061a3464a1349db216e442de08ef5282167 /src/main/java/de/pixart/messenger/services/XmppConnectionService.java
parent8b6981c6ebf8286eb690764aaa8165a7a398c8da (diff)
fetch device ids for muc members w/o known devices
Diffstat (limited to '')
-rw-r--r--src/main/java/de/pixart/messenger/services/XmppConnectionService.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
index 0be6c824a..737598cbb 100644
--- a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
+++ b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
@@ -2479,6 +2479,7 @@ public class XmppConnectionService extends Service {
private void fetchConferenceMembers(final Conversation conversation) {
final Account account = conversation.getAccount();
+ final AxolotlService axolotlService = account.getAxolotlService();
final String[] affiliations = {"member", "admin", "owner"};
OnIqPacketReceived callback = new OnIqPacketReceived() {
@@ -2494,7 +2495,10 @@ public class XmppConnectionService extends Service {
if ("item".equals(child.getName())) {
MucOptions.User user = AbstractParser.parseItem(conversation, child);
if (!user.realJidMatchesAccount()) {
- conversation.getMucOptions().updateUser(user);
+ boolean isNew = conversation.getMucOptions().updateUser(user);
+ if (isNew && user.getRealJid() != null && axolotlService.hasEmptyDeviceList(user.getRealJid())) {
+ axolotlService.fetchDeviceIds(user.getRealJid());
+ }
}
}
}