diff --git a/src/app/currentconversation.cpp b/src/app/currentconversation.cpp
index 5de28c6bbb672bd51c1e93a91ffa697d90578a39..f5485850229f62ad557b364bdd30d79f207fdbb2 100644
--- a/src/app/currentconversation.cpp
+++ b/src/app/currentconversation.cpp
@@ -116,6 +116,16 @@ CurrentConversation::onConversationUpdated(const QString& convId)
     updateData();
 }
 
+void
+CurrentConversation::onProfileUpdated(const QString& convId)
+{
+    // filter for our currently set id
+    if (id_ != convId)
+        return;
+    set_title(lrcInstance_->getCurrentConversationModel()->title(convId));
+    set_description(lrcInstance_->getCurrentConversationModel()->description(convId));
+}
+
 void
 CurrentConversation::connectModel()
 {
@@ -128,4 +138,9 @@ CurrentConversation::connectModel()
             this,
             &CurrentConversation::onConversationUpdated,
             Qt::UniqueConnection);
+    connect(lrcInstance_->getCurrentConversationModel(),
+            &ConversationModel::profileUpdated,
+            this,
+            &CurrentConversation::onProfileUpdated,
+            Qt::UniqueConnection);
 }
diff --git a/src/app/currentconversation.h b/src/app/currentconversation.h
index 6aa85f3d44d2c43a89c6a7ef090a4250f3ef8861..7483c107c08bc4ea9748f95503712caae0aba15e 100644
--- a/src/app/currentconversation.h
+++ b/src/app/currentconversation.h
@@ -57,6 +57,7 @@ public:
 private Q_SLOTS:
     void updateData();
     void onConversationUpdated(const QString& convId);
+    void onProfileUpdated(const QString& convId);
 
 private:
     LRCInstance* lrcInstance_;
diff --git a/src/app/mainview/MainView.qml b/src/app/mainview/MainView.qml
index a14a26117b06993380abcde8f2e3acd485518e89..50d71c49b7b493dd00581b3433e5763d038ef5d2 100644
--- a/src/app/mainview/MainView.qml
+++ b/src/app/mainview/MainView.qml
@@ -182,8 +182,6 @@ Rectangle {
         var item = ConversationsAdapter.getConvInfoMap(convId)
         if (item.convId === undefined)
             return
-        chatView.headerUserAliasLabelText = item.title
-        chatView.headerUserUserNameLabelText = item.description
         if (item.callStackViewShouldShow) {
             if (inSettingsView) {
                 toggleSettingsView()
diff --git a/src/app/mainview/components/ChatView.qml b/src/app/mainview/components/ChatView.qml
index 1cca059156ab77419b23b9c3c8aec5379d253c02..e79c5d369c681695fe7ec1cba0eabb4d8569cf2f 100644
--- a/src/app/mainview/components/ChatView.qml
+++ b/src/app/mainview/components/ChatView.qml
@@ -32,9 +32,6 @@ import "../js/pluginhandlerpickercreation.js" as PluginHandlerPickerCreation
 Rectangle {
     id: root
 
-    property string headerUserAliasLabelText: ""
-    property string headerUserUserNameLabelText: ""
-
     property bool allMessagesLoaded
 
     signal needToHideConversationInCall
@@ -63,9 +60,6 @@ Rectangle {
             Layout.maximumHeight: JamiTheme.chatViewHeaderPreferredHeight
             Layout.minimumWidth: JamiTheme.chatViewHeaderMinimumWidth
 
-            userAliasLabelText: headerUserAliasLabelText
-            userUserNameLabelText: headerUserUserNameLabelText
-
             DropArea {
                 anchors.fill: parent
                 onDropped: chatViewFooter.setFilePathsToSend(drop.urls)
diff --git a/src/app/mainview/components/ChatViewHeader.qml b/src/app/mainview/components/ChatViewHeader.qml
index 8f80044d47f1dd860b00049b43c2d16785112496..502d5b6b785e2266d74411960da5036746fb9de6 100644
--- a/src/app/mainview/components/ChatViewHeader.qml
+++ b/src/app/mainview/components/ChatViewHeader.qml
@@ -29,15 +29,19 @@ import "../../commoncomponents"
 Rectangle {
     id: root
 
-    property string userAliasLabelText
-    property string userUserNameLabelText
-
     signal backClicked
     signal needToHideConversationInCall
     signal addToConversationClicked
     signal pluginSelector
     signal showDetailsClicked
 
+    Connections {
+        target: CurrentConversation
+        enabled: true
+        function onTitleChanged() { title.eText = CurrentConversation.title }
+        function onDescriptionChanged() { description.eText = CurrentConversation.description }
+    }
+
     property bool interactionButtonsVisibility: {
         if (CurrentConversation.inCall)
             return false
@@ -109,7 +113,7 @@ Rectangle {
                 spacing: 0
 
                 ElidedTextLabel {
-                    id: userAliasLabel
+                    id: title
 
                     Layout.alignment: Qt.AlignVCenter | Qt.AlignLeft
 
@@ -118,23 +122,23 @@ Rectangle {
                     horizontalAlignment: Text.AlignLeft
                     verticalAlignment: Text.AlignVCenter
 
-                    eText: userAliasLabelText
+                    eText: CurrentConversation.title
                     maxWidth: userNameOrIdRect.width
                 }
 
                 ElidedTextLabel {
-                    id: userUserNameLabel
+                    id: description
 
                     Layout.alignment: Qt.AlignVCenter | Qt.AlignLeft
 
                     visible: text.length &&
-                             userAliasLabelText != userUserNameLabelText
+                             CurrentConversation.title != CurrentConversation.description
                     font.pointSize: JamiTheme.textFontSize
                     color: JamiTheme.faddedLastInteractionFontColor
 
                     horizontalAlignment: Text.AlignLeft
                     verticalAlignment: Text.AlignVCenter
-                    eText: userUserNameLabelText
+                    eText: CurrentConversation.description
                     maxWidth: userNameOrIdRect.width
                 }
             }
diff --git a/src/app/mainview/components/SwarmDetailsPanel.qml b/src/app/mainview/components/SwarmDetailsPanel.qml
index f8035af9a8d43d5cd76f465c306719d40a0f4c1b..4836a1aef24410d9258e3f8e1d973d6bec463129 100644
--- a/src/app/mainview/components/SwarmDetailsPanel.qml
+++ b/src/app/mainview/components/SwarmDetailsPanel.qml
@@ -93,7 +93,8 @@ Rectangle {
                         JamiTheme.chatviewTextColorDark
 
                 onEditingFinished: {
-                    ConversationsAdapter.updateConversationTitle(LRCInstance.selectedConvUid, titleLine.text)
+                    if (text !== CurrentConversation.title)
+                        ConversationsAdapter.updateConversationTitle(LRCInstance.selectedConvUid, text)
                 }
             }
 
@@ -132,7 +133,8 @@ Rectangle {
                         JamiTheme.chatviewTextColorDark
 
                 onEditingFinished: {
-                    ConversationsAdapter.updateConversationDescription(LRCInstance.selectedConvUid, descriptionLine.text)
+                    if (text !== CurrentConversation.description)
+                        ConversationsAdapter.updateConversationDescription(LRCInstance.selectedConvUid, text)
                 }
             }