aboutsummaryrefslogtreecommitdiff
path: root/main/src/ui/chat_input/chat_input_controller.vala
diff options
context:
space:
mode:
authorfiaxh <git@lightrise.org>2020-04-22 15:44:12 +0200
committerfiaxh <git@lightrise.org>2020-04-22 15:44:12 +0200
commit51a23728694a3f1312cc9396fc093ca178457c3c (patch)
tree321771ae3d807d19387a8656805a648d75347994 /main/src/ui/chat_input/chat_input_controller.vala
parent7c4260eed718961874fc0ea665263ea2ce59338b (diff)
downloaddino-51a23728694a3f1312cc9396fc093ca178457c3c.tar.gz
dino-51a23728694a3f1312cc9396fc093ca178457c3c.zip
Add file upload preview
fixes #756
Diffstat (limited to 'main/src/ui/chat_input/chat_input_controller.vala')
-rw-r--r--main/src/ui/chat_input/chat_input_controller.vala15
1 files changed, 7 insertions, 8 deletions
diff --git a/main/src/ui/chat_input/chat_input_controller.vala b/main/src/ui/chat_input/chat_input_controller.vala
index 4844ff6c..fb7f88b1 100644
--- a/main/src/ui/chat_input/chat_input_controller.vala
+++ b/main/src/ui/chat_input/chat_input_controller.vala
@@ -9,6 +9,7 @@ namespace Dino.Ui {
public class ChatInputController : Object {
public signal void activate_last_message_correction();
+ public signal void file_picker_selected();
public new string? conversation_display_name { get; set; }
public string? conversation_topic { get; set; }
@@ -33,11 +34,12 @@ public class ChatInputController : Object {
chat_input.chat_text_view.text_view.buffer.changed.connect(on_text_input_changed);
chat_input.chat_text_view.text_view.key_press_event.connect(on_text_input_key_press);
+
chat_text_view_controller.send_text.connect(send_text);
chat_input.encryption_widget.encryption_changed.connect(on_encryption_changed);
- stream_interactor.get_module(FileManager.IDENTITY).upload_available.connect(on_upload_available);
+ chat_input.file_button.clicked.connect(() => file_picker_selected());
}
public void set_conversation(Conversation conversation) {
@@ -51,6 +53,10 @@ public class ChatInputController : Object {
chat_text_view_controller.initialize_for_conversation(conversation);
}
+ public void set_file_upload_active(bool active) {
+ chat_input.set_file_upload_active(active);
+ }
+
private void on_encryption_changed(Plugins.EncryptionListEntry? encryption_entry) {
reset_input_field_status();
@@ -72,13 +78,6 @@ public class ChatInputController : Object {
set_input_field_status(new Plugins.InputFieldStatus("", Plugins.InputFieldStatus.MessageType.NONE, Plugins.InputFieldStatus.InputState.NORMAL));
}
- private void on_upload_available(Account account) {
- if (conversation != null && conversation.account.equals(account)) {
- chat_input.file_button.visible = true;
- chat_input.file_separator.visible = true;
- }
- }
-
private void send_text() {
// Don't do anything if we're in a NO_SEND state. Don't clear the chat input, don't send.
if (input_field_status.input_state == Plugins.InputFieldStatus.InputState.NO_SEND) {