GdkEventButton *event,
GtkWidget *icon_view)
{
- if (!GTK_WIDGET_HAS_FOCUS (icon_view)) {
+ if (!gtk_widget_has_focus (icon_view)) {
gtk_widget_grab_focus (icon_view);
}
GtkTreePath *path;
GtkTreeIter iter;
GFile *file;
- gchar *filename;
+ gchar *template;
GError *error = NULL;
path = (GtkTreePath *) l->data;
COLUMN_ATTACHMENT, &attachment,
-1);
- filename = g_build_filename (ev_tmp_dir (),
- ev_attachment_get_name (attachment),
- NULL);
- file = g_file_new_for_path (filename);
- g_free (filename);
+ /* FIXMEchpe: convert to filename encoding first! */
+ template = g_strdup_printf ("%s.XXXXXX", ev_attachment_get_name (attachment));
+ file = ev_mkstemp_file (template, &error);
+ g_free (template);
- if (ev_attachment_save (attachment, file, &error)) {
+ if (file != NULL && ev_attachment_save (attachment, file, &error)) {
gchar *uri;
uri = g_file_get_uri (file);
static void
ev_sidebar_attachments_init (EvSidebarAttachments *ev_attachbar)
{
-#if !GTK_CHECK_VERSION (2, 15, 0)
- const GtkTargetEntry drag_targets[] = {
- { "text/uri-list", 0, 0 }
- };
-#endif
-
GtkWidget *swindow;
ev_attachbar->priv = EV_SIDEBAR_ATTACHMENTS_GET_PRIVATE (ev_attachbar);
g_object_unref);
/* Drag and Drop */
-#if GTK_CHECK_VERSION (2, 15, 0)
gtk_icon_view_enable_model_drag_source (
GTK_ICON_VIEW (ev_attachbar->priv->icon_view),
GDK_BUTTON1_MASK,
NULL, 0,
GDK_ACTION_COPY);
gtk_drag_source_add_uri_targets (ev_attachbar->priv->icon_view);
-#else
- gtk_icon_view_enable_model_drag_source (
- GTK_ICON_VIEW (ev_attachbar->priv->icon_view),
- GDK_BUTTON1_MASK,
- drag_targets,
- G_N_ELEMENTS (drag_targets),
- GDK_ACTION_COPY);
-#endif
g_signal_connect (ev_attachbar->priv->icon_view,
"drag-data-get",