diff --git a/shell/ev-sidebar-attachments.c b/shell/ev-sidebar-attachments.c
index 3d5202f..3495a59 100644
--- a/shell/ev-sidebar-attachments.c
+++ b/shell/ev-sidebar-attachments.c
@@ -398,21 +398,24 @@ ev_sidebar_attachments_drag_data_get (GtkWidget        *widget,
 	EvSidebarAttachments *ev_attachbar = EV_SIDEBAR_ATTACHMENTS (user_data);
 	GList                *selected = NULL, *l;
         GPtrArray            *uris;
+        gchar                *dir;
         char                **uri_list;
+        GError              *error = NULL;
 
 	selected = gtk_icon_view_get_selected_items (GTK_ICON_VIEW (ev_attachbar->priv->icon_view));
 	if (!selected)
 		return;
 
         uris = g_ptr_array_new ();
-	
+	dir = ev_mkdtemp ("drag-XXXXXX", error);
+        if (dir == NULL)
+                return;
 	for (l = selected; l && l->data; l = g_list_next (l)) {
 		EvAttachment *attachment;
 		GtkTreePath  *path;
 		GtkTreeIter   iter;
 		GFile        *file;
-		gchar        *template;
-		GError       *error = NULL;
+                gchar        *filename;
 		
 		path = (GtkTreePath *) l->data;
 
@@ -423,9 +426,9 @@ ev_sidebar_attachments_drag_data_get (GtkWidget        *widget,
 				    -1);
 
                 /* 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);
+                filename = g_build_filename (dir, ev_attachment_get_name (attachment), NULL);
+                file = g_file_new_for_path (filename);
+                g_free (filename);
 		
 		if (file != NULL && ev_attachment_save (attachment, file, &error)) {
 			gchar *uri;
@@ -443,7 +446,7 @@ ev_sidebar_attachments_drag_data_get (GtkWidget        *widget,
 		g_object_unref (file);
 		g_object_unref (attachment);
 	}
-
+        g_free (dir);
         g_ptr_array_add (uris, NULL); /* NULL-terminate */
         uri_list = (char **) g_ptr_array_free (uris, FALSE);
         gtk_selection_data_set_uris (data, uri_list);
@@ -586,7 +589,7 @@ ev_sidebar_attachments_init (EvSidebarAttachments *ev_attachbar)
 		GTK_ICON_VIEW (ev_attachbar->priv->icon_view),
 		GDK_BUTTON1_MASK,
 		NULL, 0,
-		GDK_ACTION_COPY);
+		GDK_ACTION_MOVE);
         gtk_drag_source_add_uri_targets (ev_attachbar->priv->icon_view);
 
 	g_signal_connect (ev_attachbar->priv->icon_view,
