aboutsummaryrefslogtreecommitdiff
path: root/main/src/ui/conversation_summary/merged_message_item.vala
diff options
context:
space:
mode:
authorfiaxh <git@mx.ax.lt>2017-08-23 20:30:44 +0200
committerfiaxh <git@mx.ax.lt>2017-08-25 22:29:40 +0200
commit5fcf8e73efeea60413a383e6e6a096a3981be1a2 (patch)
tree8f7aa88a0b167d46a90c2966b3ea15959a8a4014 /main/src/ui/conversation_summary/merged_message_item.vala
parent7b395263c1ec0e6b057f7c3bb1d0525f6f38964d (diff)
downloaddino-5fcf8e73efeea60413a383e6e6a096a3981be1a2.tar.gz
dino-5fcf8e73efeea60413a383e6e6a096a3981be1a2.zip
Show nicks in MUCs, real jid in individual occupant menu
Diffstat (limited to 'main/src/ui/conversation_summary/merged_message_item.vala')
-rw-r--r--main/src/ui/conversation_summary/merged_message_item.vala14
1 files changed, 10 insertions, 4 deletions
diff --git a/main/src/ui/conversation_summary/merged_message_item.vala b/main/src/ui/conversation_summary/merged_message_item.vala
index 6c1166d1..4cabebac 100644
--- a/main/src/ui/conversation_summary/merged_message_item.vala
+++ b/main/src/ui/conversation_summary/merged_message_item.vala
@@ -16,10 +16,11 @@ public class MergedMessageItem : MessageItem {
base(stream_interactor, conversation, message);
set_main_widget(textview);
set_title_widget(name_label);
-
add_message(message);
+
string display_name = Util.get_message_display_name(stream_interactor, message, conversation.account);
- name_label.set_markup(@"<span foreground=\"#$(Util.get_name_hex_color(display_name, false))\">$display_name</span>");
+ string color = Util.get_name_hex_color(stream_interactor, conversation.account, message.from, false);
+ name_label.set_markup(@"<span foreground=\"#$color\">$display_name</span>");
textview.style_updated.connect(update_display_style);
update_display_style();
@@ -28,7 +29,11 @@ public class MergedMessageItem : MessageItem {
public override void add_message(Message message) {
base.add_message(message);
if (messages.size > 1) textview.add_text("\n");
- textview.add_text(message.body);
+ string text = message.body;
+ if (text.length > 10000) {
+ text = text.slice(0, 10000) + " [" + _("Message too long") + "]";
+ }
+ textview.add_text(text);
}
public override bool merge(Message message) {
@@ -46,7 +51,8 @@ public class MergedMessageItem : MessageItem {
private void update_display_style() {
string display_name = Util.get_message_display_name(stream_interactor, messages[0], conversation.account);
- name_label.set_markup(@"<span foreground=\"#$(Util.get_name_hex_color(display_name, Util.is_dark_theme(textview)))\">$display_name</span>");
+ string color = Util.get_name_hex_color(stream_interactor, conversation.account, messages[0].real_jid ?? messages[0].from, Util.is_dark_theme(textview));
+ name_label.set_markup(@"<span foreground=\"#$color\">$display_name</span>");
}
}