diff options
Diffstat (limited to 'shell/e-storage-set-view.c')
-rw-r--r-- | shell/e-storage-set-view.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/shell/e-storage-set-view.c b/shell/e-storage-set-view.c index 05ac236412..7bfb88e04f 100644 --- a/shell/e-storage-set-view.c +++ b/shell/e-storage-set-view.c @@ -958,15 +958,22 @@ impl_tree_drag_drop (ETree *etree, int y, unsigned int time) { + EStorageSetView *storage_set_view; + EStorageSetViewPrivate *priv; + const char *folder_path; + + storage_set_view = E_STORAGE_SET_VIEW (etree); + priv = storage_set_view->priv; + e_tree_drag_unhighlight (etree); - if (context->targets != NULL) { - gtk_drag_get_data (GTK_WIDGET (etree), context, - GPOINTER_TO_INT (context->targets->data), - time); - return TRUE; - } - return FALSE; + folder_path = e_tree_memory_node_get_data (E_TREE_MEMORY (priv->etree_model), + e_tree_node_at_row (E_TREE (storage_set_view), row)); + if (folder_path == NULL) + return FALSE; + + return e_folder_dnd_bridge_drop (GTK_WIDGET (etree), context, time, + priv->storage_set, folder_path); } static void |