Philipp Hörist pushed to branch master at gajim / gajim
Commits:
cacdbb07 by Nicoco at 2024-09-22T11:43:27+00:00
imprv: Inform user when referenced message cannot be found
- - - - -
2 changed files:
- gajim/gtk/conversation/rows/message.py
- gajim/gtk/referenced_message.py
Changes:
=====================================
gajim/gtk/conversation/rows/message.py
=====================================
@@ -38,6 +38,7 @@
from gajim.gtk.conversation.rows.widgets import NicknameLabel
from gajim.gtk.menus import get_chat_row_menu
from gajim.gtk.preview import PreviewWidget
+from gajim.gtk.referenced_message import ReferencedMessageNotFoundWidget
from gajim.gtk.referenced_message import ReferencedMessageWidget
from gajim.gtk.util import format_fingerprint
from gajim.gtk.util import GajimPopover
@@ -185,10 +186,13 @@ def _set_content(self, message: Message) -> None:
self._is_outgoing,
self._muc_context)
else:
- referenced_message = message.get_referenced_message()
- if referenced_message is not None:
- self._ref_message_widget = ReferencedMessageWidget(
- self._contact, referenced_message)
+ if message.reply is not None:
+ referenced_message = message.get_referenced_message()
+ if referenced_message is None:
+ self._ref_message_widget =
ReferencedMessageNotFoundWidget()
+ else:
+ self._ref_message_widget = ReferencedMessageWidget(
+ self._contact, referenced_message)
self._message_widget = MessageWidget(self._contact.account)
self._message_widget.add_with_styling(self.text,
nickname=self.name)
=====================================
gajim/gtk/referenced_message.py
=====================================
@@ -196,6 +196,38 @@ def get_message_reply(self) -> ReplyData | None:
)
+class ReferencedMessageNotFoundWidget(Gtk.EventBox):
+ def __init__(self) -> None:
+ Gtk.EventBox.__init__(self)
+
+ main_box = Gtk.Box(spacing=12, hexpand=True)
+ main_box.get_style_context().add_class('referenced-message')
+ self.add(main_box)
+
+ quote_bar = Gtk.Box(width_request=4)
+ quote_bar.set_name('quote-bar')
+ main_box.add(quote_bar)
+
+ content_box = Gtk.Box(
+ orientation=Gtk.Orientation.VERTICAL, halign=Gtk.Align.START
+ )
+ main_box.add(content_box)
+
+ message_box = Gtk.Box(spacing=12)
+ message_label = Gtk.Label(
+ label=_('The referenced message is not available.'),
+ halign=Gtk.Align.START,
+ max_width_chars=100,
+ ellipsize=Pango.EllipsizeMode.END,
+ )
+ message_label.get_style_context().add_class('dim-label')
+
+ message_box.add(message_label)
+ content_box.add(message_box)
+
+ self.show_all()
+
+
class ReplyBox(Gtk.Box):
def __init__(self) -> None:
Gtk.Box.__init__(self, spacing=12, no_show_all=True)
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/cacdbb07af29f7f43f1ff9ab958db9b6e3db5455
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/cacdbb07af29f7f43f1ff9ab958db9b6e3db5455
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]