diff options
-rw-r--r-- | src/chat.py | 2 | ||||
-rw-r--r-- | src/message.py | 25 |
2 files changed, 12 insertions, 15 deletions
diff --git a/src/chat.py b/src/chat.py index 1635faa..4b11ed0 100644 --- a/src/chat.py +++ b/src/chat.py @@ -198,7 +198,7 @@ class WeegtkChat(Adw.Bin): data = { "username": user, - "text": [msg], + "text": msg, "type": msg_type } self.model.append(json.dumps(data)) diff --git a/src/message.py b/src/message.py index 0be93c2..bb7691e 100644 --- a/src/message.py +++ b/src/message.py @@ -69,21 +69,18 @@ class WeegtkMessage(Gtk.Box): self.avatar.set_visible(False) self.username.set_visible(False) - first = True + # Message should only be a string now + assert(isinstance(data["text"], str)) padding_size = self.avatar.get_size() + self.avatar.get_margin_start() + self.avatar.get_margin_end() - # TODO messages no longer should be a list, and there should only be one message per entry - # Remove this for loop and make sure chat only sets message contents as a single string - for message in data["text"]: - margin = 5 if not first else 0 - first = False - markuped = self.parse_message(message) - msg = Gtk.Label(label=markuped, selectable=True, - wrap=True, wrap_mode=Pango.WrapMode.WORD_CHAR, xalign=0, - margin_top=margin, use_markup=True, - margin_start= padding_size if data["type"] in ["message_append", "system_append"] else 0) + markuped = self.parse_message(data["text"]) + msg = Gtk.Label(label=markuped, selectable=True, + wrap=True, wrap_mode=Pango.WrapMode.WORD_CHAR, xalign=0, + margin_top=5 if "append" not in data["type"] else 0, + use_markup=True, + margin_start=0 if self.avatar.get_visible() else padding_size) - if data["type"] in ["system", "system_append"]: - msg.add_css_class("system-message") - self.message_list.append(msg) + if data["type"] in ["system", "system_append"]: + msg.add_css_class("system-message") + self.message_list.append(msg) |