X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=libmodest-dbus-client%2Flibmodest-dbus-client.c;h=874d5db1c4fed758e8b939059baecaaa2da59f20;hp=5a6113a396dd047b98bcbde0e7ad4b54668ff911;hb=c1066a95c306c71fc8034646ba5d7c1b1b67973e;hpb=d5e48a97879ada8cf2932a5f125deb2c70ebefb2 diff --git a/libmodest-dbus-client/libmodest-dbus-client.c b/libmodest-dbus-client/libmodest-dbus-client.c index 5a6113a..874d5db 100644 --- a/libmodest-dbus-client/libmodest-dbus-client.c +++ b/libmodest-dbus-client/libmodest-dbus-client.c @@ -61,60 +61,19 @@ static gchar* get_attachments_string (GSList *attachments) return attachments_str; } - -/* TODO: Is this actually used by anything? - * I guess that everything uses *_compose_mail() instead. murrayc. - */ - + /** - * libmodest_dbus_client_send_mail: + * libmodest_dbus_client_mail_to: * @osso_context: a valid #osso_context_t object. - * @to: The Recipients (From: line) - * @cc: Recipients for carbon copies - * @bcc: Recipients for blind carbon copies - * @subject: Subject line - * @body: The actual body of the mail to send - * @attachments: Additional list of attachments + * @mailto_uri: A mailto URI. * * This function will try to do a remote procedure call (rpc) - * into modest (or start it if necessary) and send a new - * email with the supplied parameters. + * into modest (or start it if necessary) and open a composer + * window with the supplied parameters prefilled. * * Return value: Whether or not the rpc call to modest * was successfull **/ -gboolean -libmodest_dbus_client_send_mail (osso_context_t *osso_context, const gchar *to, const gchar *cc, - const gchar *bcc, const gchar* subject, const gchar* body, GSList *attachments) -{ - gchar *attachments_str = get_attachments_string(attachments); - - osso_rpc_t retval; - const osso_return_t ret = osso_rpc_run_with_defaults(osso_context, - MODEST_DBUS_NAME, - MODEST_DBUS_METHOD_SEND_MAIL, &retval, - DBUS_TYPE_STRING, to, - DBUS_TYPE_STRING, cc, - DBUS_TYPE_STRING, bcc, - DBUS_TYPE_STRING, subject, - DBUS_TYPE_STRING, body, - DBUS_TYPE_STRING, attachments_str, - DBUS_TYPE_INVALID); - - if (ret != OSSO_OK) { - printf("debug: %s: osso_rpc_run() failed.\n", __FUNCTION__); - return FALSE; - } else { - printf("debug: %s: osso_rpc_run() succeeded.\n", __FUNCTION__); - } - - osso_rpc_free_val(&retval); - - g_free (attachments_str); - - return TRUE; -} - gboolean libmodest_dbus_client_mail_to (osso_context_t *osso_context, const gchar *mailto_uri) { @@ -144,8 +103,8 @@ libmodest_dbus_client_mail_to (osso_context_t *osso_context, const gchar *mailto * @cc: Recipients for carbon copies * @bcc: Recipients for blind carbon copies * @subject: Subject line - * @body: The actual body of the mail to send - * @attachments: Additional list of attachments + * @body: The actual body of the mail to compose. + * @attachments: Additional list of attachments. A list of URI strings. * * This function will try to do a remote procedure call (rpc) * into modest (or start it if necessary) and open a composer @@ -263,6 +222,30 @@ libmodest_dbus_client_open_default_inbox (osso_context_t *osso_context) return TRUE; } +gboolean +libmodest_dbus_client_open_account (osso_context_t *osso_context, + const gchar *account_id) +{ + osso_rpc_t retval; + const osso_return_t ret = + osso_rpc_run_with_defaults(osso_context, + MODEST_DBUS_NAME, + MODEST_DBUS_METHOD_OPEN_ACCOUNT, &retval, + DBUS_TYPE_STRING, account_id, + DBUS_TYPE_INVALID); + + if (ret != OSSO_OK) { + printf("debug: %s: osso_rpc_run() failed.\n", __FUNCTION__); + return FALSE; + } else { + printf("debug: %s: osso_rpc_run() succeeded.\n", __FUNCTION__); + } + + osso_rpc_free_val(&retval); + + return TRUE; +} + /** * libmodest_dbus_client_delete_message: * @osso_context: a valid #osso_context_t object. @@ -655,8 +638,8 @@ libmodest_dbus_client_search (osso_context_t *osso_ctx, folder = ""; } - sd_v = start_date; - ed_v = end_date; + sd_v = (dbus_int64_t) start_date; + ed_v = (dbus_int64_t) end_date; flags_v = (dbus_int32_t) flags; size_v = (dbus_uint32_t) min_size; @@ -671,8 +654,6 @@ libmodest_dbus_client_search (osso_context_t *osso_ctx, dbus_message_set_auto_start (msg, TRUE); - dbus_error_init (&err); - /* Use a long timeout (2 minutes) because the search currently * gets folders and messages from the servers. */ timeout = 120000; //milliseconds. @@ -682,6 +663,7 @@ libmodest_dbus_client_search (osso_context_t *osso_ctx, __FUNCTION__); */ /* TODO: Detect the timeout somehow. */ DBusError err; + dbus_error_init (&err); reply = dbus_connection_send_with_reply_and_block (con, msg, timeout,