diff options
author | Carlos Garcia Campos <carlosgc@gnome.org> | 2008-01-25 12:30:28 (GMT) |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@src.gnome.org> | 2008-01-25 12:30:28 (GMT) |
commit | e912e532fd67211aa87ac79414efb30f30a00fab (patch) | |
tree | 7a4a5fd318af1bcae3659ffea4e0cd3ed0eae4a8 /shell/ev-sidebar-attachments.c | |
parent | efb48b86f60fbaa6ab7e6cb1edb9b1994f5575b3 (diff) |
Port to gio and drop gnome-vfs dependency. Fixes bug #510401. Based on
2008-01-25 Carlos Garcia Campos <carlosgc@gnome.org>
* configure.ac:
* backend/comics/comics-document.c: (comics_document_load):
* libdocument/ev-attachment.[ch]: (ev_attachment_finalize),
(ev_attachment_set_property), (ev_attachment_init),
(ev_attachment_save), (ev_attachment_launch_app),
(ev_attachment_open):
* libdocument/ev-document-factory.c: (get_document_from_uri):
* libdocument/ev-file-helpers.[ch]: (ev_tmp_file_get),
(ev_tmp_file_unlink), (ev_tmp_uri_unlink), (ev_xfer_uri_simple),:
* shell/ev-jobs.c:
* shell/ev-password.c: (ev_password_dialog_set_property),
(ev_password_dialog_save_password):
* shell/ev-sidebar-attachments.c:
(ev_sidebar_attachments_drag_data_get):
* shell/ev-window-title.c: (get_filename_from_uri):
* shell/ev-window.c: (ev_window_clear_temp_file),
(ev_window_load_job_cb), (window_open_file_copy_ready_cb),
(ev_window_open_uri), (window_save_file_copy_ready_cb),
(ev_window_save_remote), (ev_window_cmd_save_as), (launch_action),
(launch_external_uri), (image_save_dialog_response_cb),
(attachment_save_dialog_response_cb):
* shell/main.c: (load_files), (load_files_remote), (main):
* thumbnailer/evince-thumbnailer.c: (main):
Port to gio and drop gnome-vfs dependency. Fixes bug
#510401. Based on patch by Cosimo Cecchi.
svn path=/trunk/; revision=2858
Diffstat (limited to 'shell/ev-sidebar-attachments.c')
-rw-r--r-- | shell/ev-sidebar-attachments.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/shell/ev-sidebar-attachments.c b/shell/ev-sidebar-attachments.c index 5d2beff..7fb7f00 100644 --- a/shell/ev-sidebar-attachments.c +++ b/shell/ev-sidebar-attachments.c @@ -406,7 +406,8 @@ ev_sidebar_attachments_drag_data_get (GtkWidget *widget, EvAttachment *attachment; GtkTreePath *path; GtkTreeIter iter; - gchar *uri, *filename; + GFile *file; + gchar *filename; GError *error = NULL; path = (GtkTreePath *) l->data; @@ -420,12 +421,16 @@ ev_sidebar_attachments_drag_data_get (GtkWidget *widget, filename = g_build_filename (ev_tmp_dir (), ev_attachment_get_name (attachment), NULL); + file = g_file_new_for_path (filename); + g_free (filename); - uri = g_filename_to_uri (filename, NULL, NULL); + if (ev_attachment_save (attachment, file, &error)) { + gchar *uri; - if (ev_attachment_save (attachment, filename, &error)) { + uri = g_file_get_uri (file); g_string_append (uri_list, uri); g_string_append_c (uri_list, '\n'); + g_free (uri); } if (error) { @@ -433,8 +438,8 @@ ev_sidebar_attachments_drag_data_get (GtkWidget *widget, g_error_free (error); } - g_free (uri); gtk_tree_path_free (path); + g_object_unref (file); g_object_unref (attachment); } |