From f0abb8aaf9d06106235ca5e0e6b3ca2e425c4422 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Thu, 18 Jul 2019 02:03:42 +0200 Subject: Refactor file receive/send interfaces and UI --- libdino/src/service/content_item_store.vala | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'libdino/src/service/content_item_store.vala') diff --git a/libdino/src/service/content_item_store.vala b/libdino/src/service/content_item_store.vala index 9f39ce59..3800f35d 100644 --- a/libdino/src/service/content_item_store.vala +++ b/libdino/src/service/content_item_store.vala @@ -257,18 +257,24 @@ public class FileItem : ContentItem { public FileItem(FileTransfer file_transfer, int id) { Jid jid = file_transfer.direction == FileTransfer.DIRECTION_SENT ? file_transfer.account.bare_jid.with_resource(file_transfer.account.resourcepart) : file_transfer.counterpart; - base(id, TYPE, jid, file_transfer.local_time, file_transfer.time, file_transfer.encryption, file_to_message_state(file_transfer.state)); + Entities.Message.Marked mark = Entities.Message.Marked.NONE; + if (file_transfer.direction == FileTransfer.DIRECTION_SENT) { + mark = file_to_message_state(file_transfer.state); + } + base(id, TYPE, jid, file_transfer.local_time, file_transfer.time, file_transfer.encryption, mark); this.file_transfer = file_transfer; - file_transfer.notify["state"].connect_after(() => { - this.mark = file_to_message_state(file_transfer.state); - }); + if (file_transfer.direction == FileTransfer.DIRECTION_SENT) { + file_transfer.notify["state"].connect_after(() => { + this.mark = file_to_message_state(file_transfer.state); + }); + } } private static Entities.Message.Marked file_to_message_state(FileTransfer.State state) { switch (state) { - case FileTransfer.State.IN_PROCESS: + case FileTransfer.State.IN_PROGRESS: return Entities.Message.Marked.UNSENT; case FileTransfer.State.COMPLETE: return Entities.Message.Marked.NONE; -- cgit v1.2.3-70-g09d2