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


Commits:
f0a5c670 by wurstsalat at 2021-11-17T23:37:35+01:00
Allow multiple corrections of last message

- - - - -


4 changed files:

- gajim/gtk/controls/chat.py
- gajim/gtk/controls/groupchat.py
- gajim/gtk/conversation/rows/message.py
- gajim/gtk/conversation/view.py


Changes:

=====================================
gajim/gtk/controls/chat.py
=====================================
@@ -446,7 +446,9 @@ def _on_message_sent(self, event):
         if not event.message:
             return
 
-        self.last_sent_msg = event.message_id
+        if event.correct_id is None:
+            self.last_sent_msg = event.message_id
+
         message_id = event.message_id
 
         if event.label:


=====================================
gajim/gtk/controls/groupchat.py
=====================================
@@ -1112,7 +1112,8 @@ def _on_message_sent(self, event):
             return
         # we'll save sent message text when we'll receive it in
         # _nec_gc_message_received
-        self.last_sent_msg = event.message_id
+        if event.correct_id is None:
+            self.last_sent_msg = event.message_id
         if self.correcting:
             self.correcting = False
             self.msg_textview.get_style_context().remove_class(


=====================================
gajim/gtk/conversation/rows/message.py
=====================================
@@ -325,7 +325,7 @@ def set_retracted(self, text: str) -> None:
         self._message_widget.add_content(process(text))
         self.get_style_context().add_class('retracted-message')
 
-    def set_correction(self, text, message_id):
+    def set_correction(self, text: str) -> None:
         self._corrections.append(self._message_widget.get_text())
         result = process(text)
         self._message_widget.add_content(result)
@@ -339,8 +339,6 @@ def set_correction(self, text, message_id):
             corrections, max_chars=150, max_lines=10)
         self._message_icons.set_correction_tooltip(
             _('Message corrected. Original message:\n%s') % corrections)
-        # Update message_id for this row
-        self.message_id = message_id
 
     def set_error(self, tooltip):
         self._message_icons.set_error_icon_visible(True)


=====================================
gajim/gtk/conversation/view.py
=====================================
@@ -221,8 +221,8 @@ def add_message(self,
         if not timestamp:
             timestamp = time.time()
 
-        if correct_id:
-            self.correct_message(correct_id, message_id, text)
+        if correct_id is not None:
+            self.correct_message(correct_id, text)
             return
 
         message = MessageRow(
@@ -453,10 +453,10 @@ def scroll_to_end(self, force=False):
         if self.autoscroll or force:
             GLib.idle_add(scroll_to_end, self.get_parent().get_parent())
 
-    def correct_message(self, correct_id, message_id, text):
+    def correct_message(self, correct_id: str, text: str) -> None:
         message_row = self._get_row_by_message_id(correct_id)
         if message_row is not None:
-            message_row.set_correction(text, message_id)
+            message_row.set_correction(text)
             message_row.set_merged(False)
 
     def show_message_retraction(self, stanza_id: str, text: str) -> None:



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/f0a5c670d4aea0f959aa0cd8aa19cd5ccc5abbb6

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/f0a5c670d4aea0f959aa0cd8aa19cd5ccc5abbb6
You're receiving this email because of your account on dev.gajim.org.


_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits

Reply via email to