[geary/wip/765516-gtk-widget-conversation-viewer: 40/101] Add attachment icon back to the message viewer.
- From: Michael Gratton <mjog src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [geary/wip/765516-gtk-widget-conversation-viewer: 40/101] Add attachment icon back to the message viewer.
- Date: Mon, 25 Jul 2016 03:11:12 +0000 (UTC)
commit 96b00b9a0ea082bb3e4926ed8544a6b50338108c
Author: Michael James Gratton <mike vee net>
Date: Fri Apr 15 02:24:52 2016 +1000
Add attachment icon back to the message viewer.
.../conversation-viewer/conversation-message.vala | 54 ++++++++++---------
ui/conversation-message.ui | 13 +++++
2 files changed, 41 insertions(+), 26 deletions(-)
---
diff --git a/src/client/conversation-viewer/conversation-message.vala
b/src/client/conversation-viewer/conversation-message.vala
index 3da90eb..2876c34 100644
--- a/src/client/conversation-viewer/conversation-message.vala
+++ b/src/client/conversation-viewer/conversation-message.vala
@@ -80,6 +80,8 @@ public class ConversationMessage : Gtk.Box {
private Gtk.Box date_header;
[GtkChild]
+ private Gtk.Image attachment_icon;
+ [GtkChild]
private Gtk.Button flag_button;
[GtkChild]
private Gtk.MenuButton message_menubutton;
@@ -193,9 +195,9 @@ public class ConversationMessage : Gtk.Box {
// get_style_context().add_class("sent");
// }
- // // Set attachment icon and add the attachments container if there are displayed attachments.
- // int displayed = displayed_attachments(email);
- // set_attachment_icon(div_message, displayed > 0);
+ // Set attachment icon and add the attachments container if there are displayed attachments.
+ int displayed = displayed_attachments(email);
+ attachment_icon.set_visible(displayed > 0);
// if (displayed > 0) {
// insert_attachments(div_message, email.attachments);
// }
@@ -987,32 +989,32 @@ public class ConversationMessage : Gtk.Box {
// messages in he current convo for this sender
}
- // private bool should_show_attachment(Geary.Attachment attachment) {
- // // if displayed inline, don't include in attachment list
- // if (attachment.content_id in inlined_content_ids)
- // return false;
+ private int displayed_attachments(Geary.Email email) {
+ int ret = 0;
+ foreach (Geary.Attachment attachment in email.attachments) {
+ if (should_show_attachment(attachment)) {
+ ret++;
+ }
+ }
+ return ret;
+ }
+
+ private bool should_show_attachment(Geary.Attachment attachment) {
+ // if displayed inline, don't include in attachment list
+ if (attachment.content_id in inlined_content_ids)
+ return false;
- // switch (attachment.content_disposition.disposition_type) {
- // case Geary.Mime.DispositionType.ATTACHMENT:
- // return true;
+ switch (attachment.content_disposition.disposition_type) {
+ case Geary.Mime.DispositionType.ATTACHMENT:
+ return true;
- // case Geary.Mime.DispositionType.INLINE:
- // return !is_content_type_supported_inline(attachment.content_type);
+ case Geary.Mime.DispositionType.INLINE:
+ return !is_content_type_supported_inline(attachment.content_type);
- // default:
- // assert_not_reached();
- // }
- // }
-
- // private int displayed_attachments(Geary.Email email) {
- // int ret = 0;
- // foreach (Geary.Attachment attachment in email.attachments) {
- // if (should_show_attachment(attachment)) {
- // ret++;
- // }
- // }
- // return ret;
- // }
+ default:
+ assert_not_reached();
+ }
+ }
// private void insert_attachments(WebKit.DOM.HTMLElement email_container,
// Gee.List<Geary.Attachment> attachments) {
diff --git a/ui/conversation-message.ui b/ui/conversation-message.ui
index cbfb0d0..3dcf169 100644
--- a/ui/conversation-message.ui
+++ b/ui/conversation-message.ui
@@ -398,6 +398,19 @@
<property name="spacing">1</property>
<property name="homogeneous">True</property>
<child>
+ <object class="GtkImage" id="attachment_icon">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="tooltip_text" translatable="yes">This message has attachments</property>
+ <property name="icon_name">mail-attachment-symbolic</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
<object class="GtkButton" id="flag_button">
<property name="visible">True</property>
<property name="sensitive">False</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]