From: José Dapena Paz Date: Thu, 17 Dec 2009 16:29:34 +0000 (+0100) Subject: If handle_calendar is not handler, then don't show the calendar containers X-Git-Tag: 3.2.10-1~6 X-Git-Url: http://git.maemo.org/git/?p=modest;a=commitdiff_plain;h=8b362d172c9007ccbf2c33d7cd1a43b750f7afbb If handle_calendar is not handler, then don't show the calendar containers --- diff --git a/src/modest-marshal.list b/src/modest-marshal.list index 94d596a..6c4d092 100644 --- a/src/modest-marshal.list +++ b/src/modest-marshal.list @@ -14,3 +14,4 @@ BOOL:STRING,OBJECT BOOL:ENUM,BOOL BOOL:ENUM VOID:OBJECT,OBJECT +BOOL:OBJECT,OBJECT diff --git a/src/widgets/modest-gtkhtml-msg-view.c b/src/widgets/modest-gtkhtml-msg-view.c index 35810e4..b2c5205 100644 --- a/src/widgets/modest-gtkhtml-msg-view.c +++ b/src/widgets/modest-gtkhtml-msg-view.c @@ -1857,6 +1857,7 @@ set_message (ModestGtkhtmlMsgView *self, TnyMsg *msg, TnyMimePart *other_body) gtk_widget_hide_all (priv->priority_box); gtk_widget_hide_all (priv->calendar_box); #endif + gtk_widget_hide_all (priv->calendar_actions_container); gtk_widget_set_no_show_all (priv->mail_header_view, TRUE); tny_mime_part_view_clear (TNY_MIME_PART_VIEW (priv->body_view)); @@ -1937,6 +1938,7 @@ set_message (ModestGtkhtmlMsgView *self, TnyMsg *msg, TnyMimePart *other_body) #ifdef MODEST_TOOLKIT_HILDON2 gtk_widget_set_no_show_all (priv->priority_box, TRUE); gtk_widget_set_no_show_all (priv->calendar_box, TRUE); + gtk_widget_set_no_show_all (priv->calendar_actions_container, TRUE); #endif gtk_widget_set_no_show_all (priv->attachments_box, TRUE); gtk_widget_show_all (priv->mail_header_view); @@ -1944,6 +1946,7 @@ set_message (ModestGtkhtmlMsgView *self, TnyMsg *msg, TnyMimePart *other_body) #ifdef MODEST_TOOLKIT_HILDON2 gtk_widget_set_no_show_all (priv->priority_box, FALSE); gtk_widget_set_no_show_all (priv->calendar_box, FALSE); + gtk_widget_set_no_show_all (priv->calendar_actions_container, FALSE); #endif gtk_widget_set_no_show_all (priv->mail_header_view, TRUE); @@ -2028,6 +2031,7 @@ set_header (ModestGtkhtmlMsgView *self, TnyHeader *header) #ifdef MODEST_TOOLKIT_HILDON2 gtk_widget_hide_all (priv->priority_box); gtk_widget_hide_all (priv->calendar_box); + gtk_widget_hide_all (priv->calendar_actions_container); #endif gtk_widget_set_no_show_all (priv->mail_header_view, TRUE); tny_mime_part_view_clear (TNY_MIME_PART_VIEW (priv->body_view)); @@ -2807,15 +2811,23 @@ set_calendar (ModestGtkhtmlMsgView *self, TnyHeader *header, TnyMsg *msg) calendar_part = modest_tny_msg_find_calendar (TNY_MSG (msg)); if (calendar_part) { + gboolean retval = FALSE; priv->calendar_actions_box = gtk_vbox_new (FALSE, 0); - gtk_widget_show (priv->calendar_actions_box); gtk_box_pack_start (GTK_BOX (priv->calendar_actions_container), priv->calendar_actions_box, FALSE, FALSE, 0); - gtk_widget_show (priv->calendar_actions_container); - g_signal_emit_by_name (G_OBJECT (self), "handle-calendar", calendar_part, priv->calendar_actions_box); + g_signal_emit_by_name (G_OBJECT (self), "handle-calendar", calendar_part, priv->calendar_actions_box, &retval); + if (retval) { + gtk_widget_show (priv->calendar_actions_container); + gtk_widget_show (priv->calendar_actions_box); + } else { + gtk_widget_hide (priv->calendar_actions_container); + gtk_widget_hide (priv->calendar_actions_box); + } gtk_widget_show_all (priv->calendar_box); g_object_unref (calendar_part); } else { gtk_widget_hide_all (priv->calendar_box); + gtk_widget_hide (priv->calendar_actions_container); + gtk_widget_hide (priv->calendar_actions_box); } diff --git a/src/widgets/modest-msg-view.c b/src/widgets/modest-msg-view.c index aeabe12..f40417d 100644 --- a/src/widgets/modest-msg-view.c +++ b/src/widgets/modest-msg-view.c @@ -214,7 +214,7 @@ modest_msg_view_base_init (gpointer g_class) G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET(ModestMsgViewIface, handle_calendar), NULL, NULL, - modest_marshal_VOID__OBJECT_OBJECT, + modest_marshal_BOOLEAN__OBJECT_OBJECT, G_TYPE_NONE, 2, G_TYPE_OBJECT, G_TYPE_OBJECT); initialized = TRUE; } diff --git a/src/widgets/modest-msg-view.h b/src/widgets/modest-msg-view.h index c81be1b..f7c4fcb 100644 --- a/src/widgets/modest-msg-view.h +++ b/src/widgets/modest-msg-view.h @@ -88,7 +88,7 @@ struct _ModestMsgViewIface { void (*request_fetch_images_func) (ModestMsgView *msgview); gboolean (*has_blocked_external_images_func) (ModestMsgView *msgview); void (*limit_error) (ModestMsgView *msgview); - void (*handle_calendar) (ModestMsgView *msgview, TnyMimePart *calendar_part, GtkContainer *container); + gboolean (*handle_calendar) (ModestMsgView *msgview, TnyMimePart *calendar_part, GtkContainer *container); };