From 8d9d518b64ee6256887ff2d5ad47eceeab6d89a4 Mon Sep 17 00:00:00 2001
From: Yann Leboulanger <asterix@lagaule.org>
Date: Tue, 3 Sep 2013 18:19:46 +0200
Subject: [PATCH] [lumirayz and mrDoctorWho] Ignore /me when determining
 direction_mark. Fixes #7414

---
 src/conversation_textview.py | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/conversation_textview.py b/src/conversation_textview.py
index 50d041d30d..d3918c19d9 100644
--- a/src/conversation_textview.py
+++ b/src/conversation_textview.py
@@ -1289,14 +1289,17 @@ class ConversationTextview(gobject.GObject):
             # We don't have tim for outgoing messages...
             tim = time.localtime()
         current_print_time = gajim.config.get('print_time')
-        direction_mark = i18n.paragraph_direction_mark(unicode(text))
+        if text.startswith('/me '):
+            direction_mark = i18n.paragraph_direction_mark(unicode(text[3:]))
+        else:
+            direction_mark = i18n.paragraph_direction_mark(unicode(text))
         # don't apply direction mark if it's status message
         if kind == 'status':
             direction_mark = i18n.direction_mark
         if current_print_time == 'always' and kind != 'info' and not simple:
             timestamp_str = self.get_time_to_show(tim, direction_mark)
             timestamp = time.strftime(timestamp_str, tim)
-            timestamp = direction_mark + timestamp
+            timestamp = direction_mark + timestamp + direction_mark
             buffer_.insert_with_tags_by_name(end_iter, timestamp,
                 *other_tags_for_time)
         elif current_print_time == 'sometimes' and kind != 'info' and not simple:
@@ -1427,8 +1430,7 @@ class ConversationTextview(gobject.GObject):
             before_str = helpers.from_one_line(before_str)
             after_str = gajim.config.get('after_nickname')
             after_str = helpers.from_one_line(after_str)
-            format_ = direction_mark + before_str + name + direction_mark + \
-                after_str + ' '
+            format_ = before_str + name + direction_mark + after_str + ' '
             buffer_.insert_with_tags_by_name(end_iter, format_, *name_tags)
 
     def print_subject(self, subject, iter_=None):
-- 
GitLab