static void clipboard_received_uri_list (const char *pdata, int length) { ddb_playlist_t *plt = deadbeef->plt_get_curr (); if (plt) { int cursor = deadbeef->plt_get_cursor (plt, PL_MAIN); DB_playItem_t *it = deadbeef->pl_get_for_idx_and_iter (cursor, PL_MAIN); if (it) { gchar *ptr = (char *)pdata; if (ptr && length > 0) { char *mem = malloc (length+1); memcpy (mem, ptr, length); mem[length] = 0; // use drop procedure gtkui_receive_fm_drop (it, mem, length); } deadbeef->pl_item_unref (it); } deadbeef->plt_unref (plt); } }
void main_external_drag_n_drop (DdbListviewIter before, char *mem, int length) { gtkui_receive_fm_drop ((DB_playItem_t *)before, mem, length); }