From 1376ee1f4b66879eec35d9b029ff652e262ba50b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Tue, 5 Mar 2024 15:14:16 -0500
Subject: [PATCH] MessageBar: avoid multiple composing status changed

Change-Id: I6bd2a7d961228584a74a731beb73b291f6c9a6bf
---
 src/app/mainview/components/MessageBar.qml         | 1 -
 src/app/mainview/components/MessageBarTextArea.qml | 9 +++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/app/mainview/components/MessageBar.qml b/src/app/mainview/components/MessageBar.qml
index 33fb2b95e..7cfb59e18 100644
--- a/src/app/mainview/components/MessageBar.qml
+++ b/src/app/mainview/components/MessageBar.qml
@@ -193,7 +193,6 @@ RowLayout {
                     sendMessageButtonClicked();
                 }
                 onTextChanged: {
-                    MessagesAdapter.userIsComposing(text ? true : false);
                     if (!text) {
                         messageBarTextArea.heightBinding();
                     }
diff --git a/src/app/mainview/components/MessageBarTextArea.qml b/src/app/mainview/components/MessageBarTextArea.qml
index 63880b80c..3c81acad8 100644
--- a/src/app/mainview/components/MessageBarTextArea.qml
+++ b/src/app/mainview/components/MessageBarTextArea.qml
@@ -171,6 +171,7 @@ JamiFlickable {
         textFormat: TextEdit.PlainText
         placeholderTextColor: JamiTheme.messageBarPlaceholderTextColor
         horizontalAlignment: Text.AlignLeft
+        property var cacheText: ""
 
         background: Rectangle {
             border.width: 0
@@ -183,10 +184,10 @@ JamiFlickable {
         }
 
         onTextChanged: {
-            if (text)
-                MessagesAdapter.userIsComposing(true);
-            else
-                MessagesAdapter.userIsComposing(false);
+            if (text != cacheText) {
+                cacheText = text;
+                MessagesAdapter.userIsComposing(text ? true : false);
+            }
         }
 
         // Intercept paste event to use C++ QMimeData
-- 
GitLab