From c3b0f06479bf273c47cb33fed18a07dafc25c54b Mon Sep 17 00:00:00 2001 From: Jose Dapena Paz Date: Mon, 24 Aug 2009 12:38:16 +0200 Subject: [PATCH] Provide destination URI to ModestAccountProtocol in decode_part_to_stream. --- src/hildon2/modest-msg-view-window.c | 4 +++- src/modest-account-protocol.c | 8 ++++++++ src/modest-account-protocol.h | 14 +++++++++++++- 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/hildon2/modest-msg-view-window.c b/src/hildon2/modest-msg-view-window.c index 912cdcf..bed6ebf 100644 --- a/src/hildon2/modest-msg-view-window.c +++ b/src/hildon2/modest-msg-view-window.c @@ -2688,7 +2688,8 @@ modest_msg_view_window_view_attachment (ModestMsgViewWindow *window, decode_in_provider = modest_account_protocol_decode_part_to_stream_async ( MODEST_ACCOUNT_PROTOCOL (protocol), - mime_part, + mime_part, + NULL, TNY_STREAM (temp_stream), on_decode_to_stream_async_handler, NULL, @@ -2891,6 +2892,7 @@ save_mime_part_to_file (SaveMimePartInfo *info) modest_account_protocol_decode_part_to_stream ( MODEST_ACCOUNT_PROTOCOL (protocol), pair->part, + pair->filename, stream, &written, &error); diff --git a/src/modest-account-protocol.c b/src/modest-account-protocol.c index bc1e00f..afeaaba 100644 --- a/src/modest-account-protocol.c +++ b/src/modest-account-protocol.c @@ -93,11 +93,13 @@ static void modest_account_protocol_cancel_check_support_default (ModestAccountP static void modest_account_protocol_wizard_finished_default (ModestAccountProtocol *self); static gboolean modest_account_protocol_decode_part_to_stream_default (ModestAccountProtocol *protocol, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, gssize *written, GError **error); static gboolean modest_account_protocol_decode_part_to_stream_async_default (ModestAccountProtocol *protocol, TnyMimePart *self, + const gchar *stream_uri, TnyStream *stream, TnyMimePartCallback callback, TnyStatusCallback status_callback, @@ -705,6 +707,7 @@ modest_account_protocol_wizard_finished (ModestAccountProtocol *self) static gboolean modest_account_protocol_decode_part_to_stream_default (ModestAccountProtocol *self, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, gssize *written, GError **error) @@ -716,12 +719,14 @@ modest_account_protocol_decode_part_to_stream_default (ModestAccountProtocol *se gboolean modest_account_protocol_decode_part_to_stream (ModestAccountProtocol *self, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, gssize *written, GError **error) { return MODEST_ACCOUNT_PROTOCOL_GET_CLASS (self)->decode_part_to_stream (self, part, + stream_uri, stream, written, error); @@ -730,6 +735,7 @@ modest_account_protocol_decode_part_to_stream (ModestAccountProtocol *self, static gboolean modest_account_protocol_decode_part_to_stream_async_default (ModestAccountProtocol *self, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, TnyMimePartCallback callback, TnyStatusCallback status_callback, @@ -742,6 +748,7 @@ modest_account_protocol_decode_part_to_stream_async_default (ModestAccountProtoc gboolean modest_account_protocol_decode_part_to_stream_async (ModestAccountProtocol *self, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, TnyMimePartCallback callback, TnyStatusCallback status_callback, @@ -749,6 +756,7 @@ modest_account_protocol_decode_part_to_stream_async (ModestAccountProtocol *self { return MODEST_ACCOUNT_PROTOCOL_GET_CLASS (self)->decode_part_to_stream_async (self, part, + stream_uri, stream, callback, status_callback, diff --git a/src/modest-account-protocol.h b/src/modest-account-protocol.h index 9936d83..f773f61 100644 --- a/src/modest-account-protocol.h +++ b/src/modest-account-protocol.h @@ -102,11 +102,13 @@ struct _ModestAccountProtocolClass { void (*wizard_finished) (ModestAccountProtocol *self); gboolean (*decode_part_to_stream) (ModestAccountProtocol *protocol, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, gssize *written, GError **error); gboolean (*decode_part_to_stream_async) (ModestAccountProtocol *protocol, - TnyMimePart *part, + TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, TnyMimePartCallback callback, TnyStatusCallback status_callback, @@ -495,6 +497,7 @@ void modest_account_protocol_save_remote_draft (ModestAccountProtocol *self, * modest_account_protocol_decode_part_to_stream: * @self: a #ModestAccountProtocol * @part: a #TnyMimePart + * @stream_uri: a string * @stream: a #TnyStream * @written: a #gssize pointer, with the number of bytes written * @error: a #GError @@ -504,12 +507,16 @@ void modest_account_protocol_save_remote_draft (ModestAccountProtocol *self, * (i.e. when the original message has a fake attachment, and provider * can return the real attachment). * + * The @stream_uri parameter tells the uri of the resource @stream is + * wrapping (if known). + * * Returns: %TRUE if @protocol does the decode operation, %FALSE if modest * should do it. */ gboolean modest_account_protocol_decode_part_to_stream (ModestAccountProtocol *protocol, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, gssize *written, GError **error); @@ -518,16 +525,21 @@ modest_account_protocol_decode_part_to_stream (ModestAccountProtocol *protocol, * modest_account_protocol_decode_part_to_stream_async: * @self: a #ModestAccountProtocol * @part: a #TnyMimePart + * @stream_uri: a string * @stream: a #TnyStream * * This virtual method delegates on the account protocol to decode @part * into @stream, but asynchronously. * + * The @stream_uri parameter tells the uri of the resource @stream is + * wrapping (if known). + * * Returns: %TRUE if @protocol does the decode operation (then we shouldn't expect * callback to happen from this call, %FALSE if modest should do it. */ gboolean modest_account_protocol_decode_part_to_stream_async (ModestAccountProtocol *self, TnyMimePart *part, + const gchar *stream_uri, TnyStream *stream, TnyMimePartCallback callback, TnyStatusCallback status_callback, -- 1.7.9.5