diff options
author | Philipp Hörist <philipp@hoerist.com> | 2022-10-01 01:37:05 +0300 |
---|---|---|
committer | Philipp Hörist <philipp@hoerist.com> | 2022-10-01 01:43:32 +0300 |
commit | 3c849310e8f3ab7ad3d1d14fb3c4c5d34f1ed54c (patch) | |
tree | be9016cdbb81e21dd07547a09fdba1ac4ce7aeec | |
parent | 95cd9b4c3b23d1b20e5c32ec66ef7cdd899c9b4b (diff) |
refactor: MessageRow: Move security label creation into own method
-rw-r--r-- | gajim/gtk/conversation/rows/message.py | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/gajim/gtk/conversation/rows/message.py b/gajim/gtk/conversation/rows/message.py index 60fea0a8e..49ba3b325 100644 --- a/gajim/gtk/conversation/rows/message.py +++ b/gajim/gtk/conversation/rows/message.py @@ -146,21 +146,7 @@ class MessageRow(BaseRow): if encryption_img: self._meta_box.pack_start(encryption_img, False, True, 0) - if display_marking and app.settings.get_account_setting( - account, 'enable_security_labels'): - label_text = GLib.markup_escape_text(display_marking.name) - if label_text: - display_marking_label = Gtk.Label() - display_marking_label.set_ellipsize(Pango.EllipsizeMode.END) - display_marking_label.set_max_width_chars(30) - display_marking_label.set_tooltip_text(label_text) - bgcolor = display_marking.bgcolor - fgcolor = display_marking.fgcolor - label_text = ( - f'<span size="small" bgcolor="{bgcolor}" ' - f'fgcolor="{fgcolor}"><tt>{label_text}</tt></span>') - display_marking_label.set_markup(label_text) - self._meta_box.add(display_marking_label) + self._add_security_label(display_marking) self._message_icons = MessageIcons() @@ -217,6 +203,31 @@ class MessageRow(BaseRow): self.show_all() + def _add_security_label(self, + display_marking: Optional[Displaymarking] + ) -> None: + + if display_marking is None: + return + + if not app.settings.get_account_setting(self._account, + 'enable_security_labels'): + return + + label_text = GLib.markup_escape_text(display_marking.name) + if label_text: + display_marking_label = Gtk.Label() + display_marking_label.set_ellipsize(Pango.EllipsizeMode.END) + display_marking_label.set_max_width_chars(30) + display_marking_label.set_tooltip_text(label_text) + bgcolor = display_marking.bgcolor + fgcolor = display_marking.fgcolor + label_text = ( + f'<span size="small" bgcolor="{bgcolor}" ' + f'fgcolor="{fgcolor}"><tt>{label_text}</tt></span>') + display_marking_label.set_markup(label_text) + self._meta_box.add(display_marking_label) + def _check_for_highlight(self, text: str) -> None: assert isinstance(self._contact, GroupchatContact) if self._contact.nickname is None: |