Daniel Brötzmann pushed to branch master at gajim / gajim
Commits:
1d9119d4 by wurstsalat at 2022-04-26T14:08:23+02:00
fix: Improve Security Label selector and display
- - - - -
2 changed files:
- gajim/gtk/conversation/rows/message.py
- gajim/gtk/security_label_selector.py
Changes:
=====================================
gajim/gtk/conversation/rows/message.py
=====================================
@@ -24,6 +24,7 @@
from gi.repository import GLib
from gi.repository import Gtk
from gi.repository import GObject
+from gi.repository import Pango
import cairo
@@ -164,12 +165,15 @@ def __init__(self,
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 = Gtk.Label()
+ f'fgcolor="{fgcolor}"><tt>{label_text}</tt></span>')
display_marking_label.set_markup(label_text)
self._meta_box.add(display_marking_label)
=====================================
gajim/gtk/security_label_selector.py
=====================================
@@ -47,6 +47,7 @@ def __init__(self, account: str, contact: ChatContactT) ->
None:
app.ged.register_event_handler(
'sec-catalog-received', ged.GUI1, self._sec_labels_received)
+ self.connect('changed', self._on_changed)
self.connect('destroy', self._on_destroy)
jid = self._contact.jid.bare
if self._client.get_module('SecLabels').supported:
@@ -57,6 +58,16 @@ def _on_destroy(self, _widget: SecurityLabelSelector) ->
None:
ged.GUI1,
self._sec_labels_received)
+ def _on_changed(self, _combo: Gtk.ComboBox) -> None:
+ iter_ = self.get_active_iter()
+ if iter_ is None:
+ return
+
+ model = self.get_model()
+ label_text = model.get_value(iter_, 0)
+ self.set_tooltip_text(
+ _('Selected security label: %s') % f'\n{label_text}')
+
def _sec_labels_received(self, event: SecCatalogReceived) -> None:
if event.account != self._account:
return
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/1d9119d45e5a8209bb2b0793eada22f5323417b3
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/1d9119d45e5a8209bb2b0793eada22f5323417b3
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