Daniel Brötzmann pushed to branch storage at gajim / gajim


Commits:
f4a41bd0 by wurstsalat at 2023-07-08T15:23:45+02:00
fix: Display message correction for received message

- - - - -
4594a93f by wurstsalat at 2023-07-08T15:24:30+02:00
fix: Detect message correction when sending message

- - - - -


4 changed files:

- gajim/gtk/chat_list.py
- gajim/gtk/chat_stack.py
- gajim/gtk/control.py
- gajim/gtk/conversation/view.py


Changes:

=====================================
gajim/gtk/chat_list.py
=====================================
@@ -625,8 +625,13 @@ def _on_message_corrected(self, event: 
events.MessageCorrected) -> None:
         if row is None:
             return
 
-        if event.correct_id == row.message_id:
-            row.set_message_text(event.msgtxt, event.nickname)
+        joined_data = event.joined_data
+        assert joined_data.correction is not None
+        if joined_data.message_id == row.message_id:
+            row.set_message_text(
+                joined_data.correction.message,
+                self._get_nick_for_received_message(
+                    event.account, joined_data))
 
     def _on_message_moderated(self, event: events.MessageModerated) -> None:
         row = self._chats.get((event.account, event.jid))


=====================================
gajim/gtk/chat_stack.py
=====================================
@@ -772,6 +772,13 @@ def _on_send_message(self) -> None:
 
         label = self._message_action_box.get_seclabel()
 
+        correct_id = None
+        if self._message_action_box.is_correcting:
+            correct_id = self._message_action_box.try_message_correction(
+                message)
+            if correct_id is None:
+                return
+
         chatstate = client.get_module('Chatstate').get_active_chatstate(
             contact)
 


=====================================
gajim/gtk/control.py
=====================================
@@ -323,10 +323,7 @@ def _on_message_sent(self, event: events.MessageSent) -> 
None:
             return
 
         if joined_data.correction is not None:
-            self._scrolled_view.correct_message(
-                joined_data.message_id,
-                joined_data.correction.message,
-                self._get_our_nick())
+            self._scrolled_view.correct_message(joined_data)
             return
 
         self._add_message(joined_data)
@@ -341,8 +338,7 @@ def _on_message_corrected(self, event: 
events.MessageCorrected) -> None:
         if not self._is_event_processable(event):
             return
 
-        self._scrolled_view.correct_message(
-            event.correct_id, event.msgtxt, event.nickname)
+        self._scrolled_view.correct_message(event.joined_data)
 
     def _on_message_moderated(self, event: events.MessageModerated) -> None:
         if not self._is_event_processable(event):


=====================================
gajim/gtk/conversation/view.py
=====================================
@@ -719,16 +719,10 @@ def update_avatars(self) -> None:
             if isinstance(row, MessageRow):
                 row.update_avatar()
 
-    def correct_message(self,
-                        correct_id: str,
-                        text: str,
-                        nickname: str | None
-                        ) -> None:
-
-        message_row = self._get_row_by_message_id(correct_id)
+    def correct_message(self, db_row: DbConversationJoinedData) -> None:
+        message_row = self._get_row_by_message_id(db_row.message_id)
         if message_row is not None:
-            message_row.set_correction(text, nickname)
-            message_row.set_merged(False)
+            message_row.update_with_content(db_row)
 
     def show_message_retraction(self, stanza_id: str, text: str) -> None:
         message_row = self.get_row_by_stanza_id(stanza_id)



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/compare/6b7fc91f12cf118e0bb1afcfc5363640ed419777...4594a93f1d16e7687da74b6c12bb7e6a56be9e4f

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/compare/6b7fc91f12cf118e0bb1afcfc5363640ed419777...4594a93f1d16e7687da74b6c12bb7e6a56be9e4f
You're receiving this email because of your account on dev.gajim.org.


_______________________________________________
Commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to