aboutsummaryrefslogtreecommitdiff
path: root/main/src/ui/conversation_content_view
diff options
context:
space:
mode:
authorMarcoPolo-PasTonMolo <marcopolopastonmolo@protonmail.com>2021-08-22 16:34:24 +0300
committerXavier Del Campo Romero <xavi.dcr@tutanota.com>2023-10-05 14:32:10 +0200
commit55668fa93befeeab8b1bef2bc7e358eee12c6398 (patch)
treebdba2dcf7150f704d5736f0a08bfc4ab377f346d /main/src/ui/conversation_content_view
parentbe78daef229e54325a34d5ba09163996646fe9c4 (diff)
downloaddino-55668fa93befeeab8b1bef2bc7e358eee12c6398.tar.gz
Adds quote functionality
Diffstat (limited to 'main/src/ui/conversation_content_view')
-rw-r--r--main/src/ui/conversation_content_view/conversation_view.vala4
-rw-r--r--main/src/ui/conversation_content_view/message_widget.vala10
2 files changed, 14 insertions, 0 deletions
diff --git a/main/src/ui/conversation_content_view/conversation_view.vala b/main/src/ui/conversation_content_view/conversation_view.vala
index 7ff3a4f7..4ca94c2e 100644
--- a/main/src/ui/conversation_content_view/conversation_view.vala
+++ b/main/src/ui/conversation_content_view/conversation_view.vala
@@ -10,6 +10,7 @@ namespace Dino.Ui.ConversationSummary {
[GtkTemplate (ui = "/im/dino/Dino/conversation_content_view/view.ui")]
public class ConversationView : Box, Plugins.ConversationItemCollection, Plugins.NotificationCollection {
+ public signal void on_quote_text(string text);
public Conversation? conversation { get; private set; }
[GtkChild] public unowned ScrolledWindow scrolled;
@@ -308,6 +309,9 @@ public class ConversationView : Box, Plugins.ConversationItemCollection, Plugins
insert_new(item);
if (item as ContentMetaItem != null) {
content_items.add(item);
+
+ MessageMetaItem current_item = item as MessageMetaItem;
+ current_item.on_quote_text.connect((t, text) => on_quote_text(text));
}
meta_items.add(item);
}
diff --git a/main/src/ui/conversation_content_view/message_widget.vala b/main/src/ui/conversation_content_view/message_widget.vala
index e7bd1282..900c9a63 100644
--- a/main/src/ui/conversation_content_view/message_widget.vala
+++ b/main/src/ui/conversation_content_view/message_widget.vala
@@ -10,6 +10,7 @@ namespace Dino.Ui.ConversationSummary {
public class MessageMetaItem : ContentMetaItem {
+ public signal void on_quote_text(string text);
private StreamInteractor stream_interactor;
private MessageItemWidget message_item_widget;
private MessageItem message_item;
@@ -54,6 +55,15 @@ public class MessageMetaItem : ContentMetaItem {
};
actions.add(action1);
}
+
+ Plugins.MessageAction action2 = new Plugins.MessageAction();
+ action2.icon_name = "go-previous-symbolic-rtl";
+ action2.callback = (button, content_meta_item_activated, widget) => {
+ string text_to_quote = ((MessageItem) message_item_widget.content_item).message.body;
+ on_quote_text(text_to_quote);
+ };
+ actions.add(action2);
+
return actions;
}