aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/eu/siacs/conversations/services/XmppConnectionService.java')
-rw-r--r--src/main/java/eu/siacs/conversations/services/XmppConnectionService.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
index 053cbde1..ce49b2b6 100644
--- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
+++ b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
@@ -2047,10 +2047,18 @@ public class XmppConnectionService extends Service {
}
public void joinMuc(Conversation conversation) {
- joinMuc(conversation, null);
+ joinMuc(conversation,null, false);
+ }
+
+ public void joinMuc(Conversation conversation, boolean followedInvite) {
+ joinMuc(conversation, null, followedInvite);
}
private void joinMuc(Conversation conversation, final OnConferenceJoined onConferenceJoined) {
+ joinMuc(conversation,onConferenceJoined,false);
+ }
+
+ private void joinMuc(Conversation conversation, final OnConferenceJoined onConferenceJoined, final boolean followedInvite) {
Account account = conversation.getAccount();
account.pendingConferenceJoins.remove(conversation);
account.pendingConferenceLeaves.remove(conversation);
@@ -2095,6 +2103,9 @@ public class XmppConnectionService extends Service {
}
if (mucOptions.membersOnly() && mucOptions.nonanonymous()) {
fetchConferenceMembers(conversation);
+ if (followedInvite && conversation.getBookmark() == null) {
+ saveConversationAsBookmark(conversation,null);
+ }
}
sendUnsentMessages(conversation);
}