diff --git a/src/messagesadapter.cpp b/src/messagesadapter.cpp
index e6f3ee7c74cd95a8abeb86f2a59dd91ed3568e5a..95f08a566e405c3e7dbf4bf27da37a599a88beec 100644
--- a/src/messagesadapter.cpp
+++ b/src/messagesadapter.cpp
@@ -693,17 +693,28 @@ MessagesAdapter::blockConversation(const QString& convUid)
 }
 
 void
-MessagesAdapter::clearConversationHistory(const QString& accountId, const QString& uid)
+MessagesAdapter::clearConversationHistory(const QString& accountId, const QString& convUid)
 {
-    lrcInstance_->getAccountInfo(accountId).conversationModel->clearHistory(uid);
-    if (uid == currentConvUid_)
+    lrcInstance_->getAccountInfo(accountId).conversationModel->clearHistory(convUid);
+    if (convUid == currentConvUid_)
         currentConvUid_.clear();
 }
 
 void
-MessagesAdapter::removeConversation(const QString& accountId, const QString& uid, bool banContact)
+MessagesAdapter::removeConversation(const QString& accountId,
+                                    const QString& convUid,
+                                    bool banContact)
 {
-    lrcInstance_->getAccountInfo(accountId).conversationModel->removeConversation(uid, banContact);
-    if (uid == currentConvUid_)
+    QStringList list = lrcInstance_->accountModel().getDefaultModerators(accountId);
+    const auto& convInfo = lrcInstance_->getConversationFromConvUid(convUid, accountId);
+    const auto contactURI = convInfo.participants.front();
+
+    if (!contactURI.isEmpty() && list.contains(contactURI)) {
+        lrcInstance_->accountModel().setDefaultModerator(accountId, contactURI, false);
+    }
+
+    lrcInstance_->getAccountInfo(accountId).conversationModel->removeConversation(convUid,
+                                                                                 banContact);
+    if (convUid == currentConvUid_)
         currentConvUid_.clear();
 }
diff --git a/src/messagesadapter.h b/src/messagesadapter.h
index 1d5773a5d9b8fe6f3db67b0a8eae5f96d49f5dab..13d0398c2ce0b0281767bb82e2295a2a63858311 100644
--- a/src/messagesadapter.h
+++ b/src/messagesadapter.h
@@ -37,14 +37,14 @@ public:
 protected:
     void safeInit() override;
 
-    Q_INVOKABLE void setupChatView(const QString& uid);
+    Q_INVOKABLE void setupChatView(const QString& convUid);
     Q_INVOKABLE void connectConversationModel();
     Q_INVOKABLE void sendContactRequest();
     Q_INVOKABLE void updateConversationForAddedContact();
     Q_INVOKABLE void removeConversation(const QString& accountId,
-                                        const QString& uid,
+                                        const QString& convUid,
                                         bool banContact = false);
-    Q_INVOKABLE void clearConversationHistory(const QString& accountId, const QString& uid);
+    Q_INVOKABLE void clearConversationHistory(const QString& accountId, const QString& convUid);
 
     // JS Q_INVOKABLE.
     Q_INVOKABLE void acceptInvitation(const QString& convUid = "");