diff --git a/src/bin/elementary/test_cnp.c b/src/bin/elementary/test_cnp.c index a9d0b7f8fa..574c72bcba 100644 --- a/src/bin/elementary/test_cnp.c +++ b/src/bin/elementary/test_cnp.c @@ -31,6 +31,7 @@ _selection(void *data, Evas_Object *obj EINA_UNUSED, Elm_Selection_Data *ev) case ELM_SEL_FORMAT_IMAGE: fmt = "IMAGE"; break; case ELM_SEL_FORMAT_VCARD: fmt = "VCARD"; break; case ELM_SEL_FORMAT_HTML: fmt = "HTML"; break; + case ELM_SEL_FORMAT_URILIST: fmt = "URILIST"; break; } fprintf(stderr, "got selection type '%s': length %zu\n", fmt, ev->len); diff --git a/src/lib/elementary/elm_cnp.h b/src/lib/elementary/elm_cnp.h index 06346e40a5..6af7870364 100644 --- a/src/lib/elementary/elm_cnp.h +++ b/src/lib/elementary/elm_cnp.h @@ -80,7 +80,8 @@ typedef enum * inline images */ ELM_SEL_FORMAT_IMAGE = 4, /**< Images */ ELM_SEL_FORMAT_VCARD = 8, /**< Vcards */ - ELM_SEL_FORMAT_HTML = 16 /**< Raw HTML-like data (eg. webkit) */ + ELM_SEL_FORMAT_HTML = 16, /**< Raw HTML-like data (eg. webkit) */ + ELM_SEL_FORMAT_URILIST = 32 /**< URI List for file DND @since 1.27 */ } Elm_Sel_Format; /** diff --git a/src/lib/elementary/elm_dnd.c b/src/lib/elementary/elm_dnd.c index d0c309a84e..ad18fef161 100644 --- a/src/lib/elementary/elm_dnd.c +++ b/src/lib/elementary/elm_dnd.c @@ -132,11 +132,14 @@ _format_to_mime_array(Elm_Sel_Format format) { Eina_Array *ret = eina_array_new(10); + if (format & ELM_SEL_FORMAT_URILIST) + eina_array_push(ret, "text/uri-list"); if (format & ELM_SEL_FORMAT_TEXT) { eina_array_push(ret, "text/plain"); eina_array_push(ret, "text/plain;charset=utf-8"); - eina_array_push(ret, "text/uri-list"); + if (!(format & ELM_SEL_FORMAT_URILIST)) + eina_array_push(ret, "text/uri-list"); } if (format & ELM_SEL_FORMAT_MARKUP) eina_array_push(ret, "application/x-elementary-markup");