Re: [E-devel] [EGIT] [core/efl] master 02/08: elm dnd/wl: add types' notify handler

2016-05-11 Thread Thiep Ha
Hello

> On May 11, 2016, at 8:14 AM, Thiep Ha  wrote:
> 
> Hello,
> 
>>> On May 11, 2016, at 3:08 AM, Mike Blumenkrantz 
>>>  wrote:
>>> 
>>> On Tue, May 3, 2016 at 4:29 AM Thiep Ha  wrote:
>>> 
>>> thiep pushed a commit to branch master.
>>> 
>>> 
>>> http://git.enlightenment.org/core/efl.git/commit/?id=8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>>> 
>>> commit 8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>>> Author: Thiep Ha 
>>> Date:   Tue May 3 09:30:39 2016 +
>>> 
>>>   elm dnd/wl: add types' notify handler
>>> 
>>>   This patch adds notify handlers for types.
>>>   It provides different ways to handle different data types.
>>> ---
>>> src/lib/elementary/elm_cnp.c | 388
>>> ++-
>>> 1 file changed, 347 insertions(+), 41 deletions(-)
>>> 
>>> diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
>>> index 8288b5e..61dac7d 100644
>>> --- a/src/lib/elementary/elm_cnp.c
>>> +++ b/src/lib/elementary/elm_cnp.c
>>> @@ -257,6 +257,13 @@ typedef Eina_Bool (*Wl_Converter_Fn_Cb) (char
>>> *target, Wl_Cnp_Selection *sel
>>> static Eina_Bool _wl_targets_converter(char *target, Wl_Cnp_Selection
>>> *sel, void *data, int size, void **data_ret, int *size_ret);
>>> static Eina_Bool _wl_general_converter(char *target, Wl_Cnp_Selection
>>> *sel, void *data, int size, void **data_ret, int *size_ret);
>>> static Eina_Bool _wl_text_converter(char *target, Wl_Cnp_Selection *sel,
>>> void *data, int size, void **data_ret, int *size_ret);
>>> +
>>> +typedef Eina_Bool   (*Wl_Data_Preparer_Cb)   (Wl_Cnp_Selection *sel,
>>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>>> Tmp_Info **tmp_info);
>>> +static Eina_Bool _wl_data_preparer_markup(Wl_Cnp_Selection *sel,
>>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>>> Tmp_Info **tmp_info);
>>> +static Eina_Bool _wl_data_preparer_uri(Wl_Cnp_Selection *sel,
>>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>>> Tmp_Info **tmp_info);
>>> +static Eina_Bool _wl_data_preparer_vcard(Wl_Cnp_Selection *sel,
>>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>>> Tmp_Info **tmp_info);
>>> +static Eina_Bool _wl_data_preparer_image(Wl_Cnp_Selection *sel,
>>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>>> Tmp_Info **tmp_info);
>>> +static Eina_Bool _wl_data_preparer_text(Wl_Cnp_Selection *sel,
>>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>>> Tmp_Info **tmp_info);
>>> #endif
>>> 
>>> struct _Cnp_Atom
>>> @@ -272,6 +279,7 @@ struct _Cnp_Atom
>>> #endif
>>> #ifdef HAVE_ELEMENTARY_WL2
>>>   Wl_Converter_Fn_Cb   wl_converter;
>>> +   Wl_Data_Preparer_Cb  wl_data_preparer;
>>> #endif
>>> 
>>>   void*_term;
>>> @@ -476,6 +484,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>> #endif
>>> #ifdef HAVE_ELEMENTARY_WL2
>>>.wl_converter = _wl_general_converter,
>>> +.wl_data_preparer = _wl_data_preparer_markup,
>>> #endif
>>>   },
>>>   ARRAYINIT(CNP_ATOM_text_urilist) {
>>> @@ -487,6 +496,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>> #endif
>>> #ifdef HAVE_ELEMENTARY_WL2
>>>.wl_converter = _wl_general_converter,
>>> +.wl_data_preparer = _wl_data_preparer_uri,
>>> #endif
>>>   },
>>>   ARRAYINIT(CNP_ATOM_text_x_vcard) {
>>> @@ -496,6 +506,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>>.x_converter = _x11_vcard_send,
>>>.x_data_preparer = _x11_data_preparer_vcard,
>>> #endif
>>> +#ifdef HAVE_ELEMENTARY_WL2
>>> +.wl_data_preparer = _wl_data_preparer_vcard,
>>> +#endif
>>>   },
>>>   ARRAYINIT(CNP_ATOM_image_png) {
>>>.name = "image/png",
>>> @@ -504,6 +517,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>>.x_converter = _x11_image_converter,
>>>.x_data_preparer = _x11_data_preparer_image,
>>> #endif
>>> +#ifdef HAVE_ELEMENTARY_WL2
>>> +.wl_data_preparer = _wl_data_preparer_image,
>>> +#endif
>>>   },
>>>   ARRAYINIT(CNP_ATOM_image_jpeg) {
>>>.name = "image/jpeg",
>>> @@ -512,6 +528,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>>.x_converter = _x11_image_converter,
>>>.x_data_preparer = _x11_data_preparer_image,
>>> #endif
>>> +#ifdef HAVE_ELEMENTARY_WL2
>>> +.wl_data_preparer = _wl_data_preparer_image,
>>> +#endif
>>>   },
>>>   ARRAYINIT(CNP_ATOM_image_bmp) {
>>>.name = "image/x-ms-bmp",
>>> @@ -520,6 +539,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>>.x_converter = _x11_image_converter,
>>>.x_data_preparer = _x11_data_preparer_image,
>>> #endif
>>> +#ifdef HAVE_ELEMENTARY_WL2
>>> +.wl_data_preparer = _wl_data_preparer_image,
>>> +#endif
>>>   },
>>>   ARRAYINIT(CNP_ATOM_image_gif) {
>>>.name = "image/gif",
>>> @@ -528,6 +550,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>>>.x_converter = _x11_image_converter,
>>>

Re: [E-devel] [EGIT] [core/efl] master 02/08: elm dnd/wl: add types' notify handler

2016-05-10 Thread Thiep Ha
Hello,

> On May 11, 2016, at 3:08 AM, Mike Blumenkrantz 
>  wrote:
> 
>> On Tue, May 3, 2016 at 4:29 AM Thiep Ha  wrote:
>> 
>> thiep pushed a commit to branch master.
>> 
>> 
>> http://git.enlightenment.org/core/efl.git/commit/?id=8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>> 
>> commit 8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>> Author: Thiep Ha 
>> Date:   Tue May 3 09:30:39 2016 +
>> 
>>elm dnd/wl: add types' notify handler
>> 
>>This patch adds notify handlers for types.
>>It provides different ways to handle different data types.
>> ---
>> src/lib/elementary/elm_cnp.c | 388
>> ++-
>> 1 file changed, 347 insertions(+), 41 deletions(-)
>> 
>> diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
>> index 8288b5e..61dac7d 100644
>> --- a/src/lib/elementary/elm_cnp.c
>> +++ b/src/lib/elementary/elm_cnp.c
>> @@ -257,6 +257,13 @@ typedef Eina_Bool (*Wl_Converter_Fn_Cb) (char
>> *target, Wl_Cnp_Selection *sel
>> static Eina_Bool _wl_targets_converter(char *target, Wl_Cnp_Selection
>> *sel, void *data, int size, void **data_ret, int *size_ret);
>> static Eina_Bool _wl_general_converter(char *target, Wl_Cnp_Selection
>> *sel, void *data, int size, void **data_ret, int *size_ret);
>> static Eina_Bool _wl_text_converter(char *target, Wl_Cnp_Selection *sel,
>> void *data, int size, void **data_ret, int *size_ret);
>> +
>> +typedef Eina_Bool   (*Wl_Data_Preparer_Cb)   (Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_markup(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_uri(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_vcard(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_image(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_text(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> #endif
>> 
>> struct _Cnp_Atom
>> @@ -272,6 +279,7 @@ struct _Cnp_Atom
>> #endif
>> #ifdef HAVE_ELEMENTARY_WL2
>>Wl_Converter_Fn_Cb   wl_converter;
>> +   Wl_Data_Preparer_Cb  wl_data_preparer;
>> #endif
>> 
>>void*_term;
>> @@ -476,6 +484,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> #endif
>> #ifdef HAVE_ELEMENTARY_WL2
>> .wl_converter = _wl_general_converter,
>> +.wl_data_preparer = _wl_data_preparer_markup,
>> #endif
>>},
>>ARRAYINIT(CNP_ATOM_text_urilist) {
>> @@ -487,6 +496,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> #endif
>> #ifdef HAVE_ELEMENTARY_WL2
>> .wl_converter = _wl_general_converter,
>> +.wl_data_preparer = _wl_data_preparer_uri,
>> #endif
>>},
>>ARRAYINIT(CNP_ATOM_text_x_vcard) {
>> @@ -496,6 +506,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_vcard_send,
>> .x_data_preparer = _x11_data_preparer_vcard,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_vcard,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_png) {
>> .name = "image/png",
>> @@ -504,6 +517,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_jpeg) {
>> .name = "image/jpeg",
>> @@ -512,6 +528,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_bmp) {
>> .name = "image/x-ms-bmp",
>> @@ -520,6 +539,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_gif) {
>> .name = "image/gif",
>> @@ -528,6 +550,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>

Re: [E-devel] [EGIT] [core/efl] master 02/08: elm dnd/wl: add types' notify handler

2016-05-10 Thread Thiep Ha


--
Thiep Ha

> On May 11, 2016, at 3:08 AM, Mike Blumenkrantz 
>  wrote:
> 
>> On Tue, May 3, 2016 at 4:29 AM Thiep Ha  wrote:
>> 
>> thiep pushed a commit to branch master.
>> 
>> 
>> http://git.enlightenment.org/core/efl.git/commit/?id=8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>> 
>> commit 8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>> Author: Thiep Ha 
>> Date:   Tue May 3 09:30:39 2016 +
>> 
>>elm dnd/wl: add types' notify handler
>> 
>>This patch adds notify handlers for types.
>>It provides different ways to handle different data types.
>> ---
>> src/lib/elementary/elm_cnp.c | 388
>> ++-
>> 1 file changed, 347 insertions(+), 41 deletions(-)
>> 
>> diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
>> index 8288b5e..61dac7d 100644
>> --- a/src/lib/elementary/elm_cnp.c
>> +++ b/src/lib/elementary/elm_cnp.c
>> @@ -257,6 +257,13 @@ typedef Eina_Bool (*Wl_Converter_Fn_Cb) (char
>> *target, Wl_Cnp_Selection *sel
>> static Eina_Bool _wl_targets_converter(char *target, Wl_Cnp_Selection
>> *sel, void *data, int size, void **data_ret, int *size_ret);
>> static Eina_Bool _wl_general_converter(char *target, Wl_Cnp_Selection
>> *sel, void *data, int size, void **data_ret, int *size_ret);
>> static Eina_Bool _wl_text_converter(char *target, Wl_Cnp_Selection *sel,
>> void *data, int size, void **data_ret, int *size_ret);
>> +
>> +typedef Eina_Bool   (*Wl_Data_Preparer_Cb)   (Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_markup(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_uri(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_vcard(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_image(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> +static Eina_Bool _wl_data_preparer_text(Wl_Cnp_Selection *sel,
>> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
>> Tmp_Info **tmp_info);
>> #endif
>> 
>> struct _Cnp_Atom
>> @@ -272,6 +279,7 @@ struct _Cnp_Atom
>> #endif
>> #ifdef HAVE_ELEMENTARY_WL2
>>Wl_Converter_Fn_Cb   wl_converter;
>> +   Wl_Data_Preparer_Cb  wl_data_preparer;
>> #endif
>> 
>>void*_term;
>> @@ -476,6 +484,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> #endif
>> #ifdef HAVE_ELEMENTARY_WL2
>> .wl_converter = _wl_general_converter,
>> +.wl_data_preparer = _wl_data_preparer_markup,
>> #endif
>>},
>>ARRAYINIT(CNP_ATOM_text_urilist) {
>> @@ -487,6 +496,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> #endif
>> #ifdef HAVE_ELEMENTARY_WL2
>> .wl_converter = _wl_general_converter,
>> +.wl_data_preparer = _wl_data_preparer_uri,
>> #endif
>>},
>>ARRAYINIT(CNP_ATOM_text_x_vcard) {
>> @@ -496,6 +506,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_vcard_send,
>> .x_data_preparer = _x11_data_preparer_vcard,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_vcard,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_png) {
>> .name = "image/png",
>> @@ -504,6 +517,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_jpeg) {
>> .name = "image/jpeg",
>> @@ -512,6 +528,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_bmp) {
>> .name = "image/x-ms-bmp",
>> @@ -520,6 +539,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>},
>>ARRAYINIT(CNP_ATOM_image_gif) {
>> .name = "image/gif",
>> @@ -528,6 +550,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>> .x_converter = _x11_image_converter,
>> .x_data_preparer = _x11_data_preparer_image,
>> #endif
>> +#ifdef HAVE_ELEMENTARY_WL2
>> +.wl_data_preparer = _wl_data_preparer_image,
>> +#endif
>>

Re: [E-devel] [EGIT] [core/efl] master 02/08: elm dnd/wl: add types' notify handler

2016-05-10 Thread Mike Blumenkrantz
On Tue, May 3, 2016 at 4:29 AM Thiep Ha  wrote:

> thiep pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/efl.git/commit/?id=8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
>
> commit 8a46f78c7d5637cc4a58bdad16c7e747acf2bda4
> Author: Thiep Ha 
> Date:   Tue May 3 09:30:39 2016 +
>
> elm dnd/wl: add types' notify handler
>
> This patch adds notify handlers for types.
> It provides different ways to handle different data types.
> ---
>  src/lib/elementary/elm_cnp.c | 388
> ++-
>  1 file changed, 347 insertions(+), 41 deletions(-)
>
> diff --git a/src/lib/elementary/elm_cnp.c b/src/lib/elementary/elm_cnp.c
> index 8288b5e..61dac7d 100644
> --- a/src/lib/elementary/elm_cnp.c
> +++ b/src/lib/elementary/elm_cnp.c
> @@ -257,6 +257,13 @@ typedef Eina_Bool (*Wl_Converter_Fn_Cb) (char
> *target, Wl_Cnp_Selection *sel
>  static Eina_Bool _wl_targets_converter(char *target, Wl_Cnp_Selection
> *sel, void *data, int size, void **data_ret, int *size_ret);
>  static Eina_Bool _wl_general_converter(char *target, Wl_Cnp_Selection
> *sel, void *data, int size, void **data_ret, int *size_ret);
>  static Eina_Bool _wl_text_converter(char *target, Wl_Cnp_Selection *sel,
> void *data, int size, void **data_ret, int *size_ret);
> +
> +typedef Eina_Bool   (*Wl_Data_Preparer_Cb)   (Wl_Cnp_Selection *sel,
> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
> Tmp_Info **tmp_info);
> +static Eina_Bool _wl_data_preparer_markup(Wl_Cnp_Selection *sel,
> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
> Tmp_Info **tmp_info);
> +static Eina_Bool _wl_data_preparer_uri(Wl_Cnp_Selection *sel,
> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
> Tmp_Info **tmp_info);
> +static Eina_Bool _wl_data_preparer_vcard(Wl_Cnp_Selection *sel,
> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
> Tmp_Info **tmp_info);
> +static Eina_Bool _wl_data_preparer_image(Wl_Cnp_Selection *sel,
> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
> Tmp_Info **tmp_info);
> +static Eina_Bool _wl_data_preparer_text(Wl_Cnp_Selection *sel,
> Elm_Selection_Data *ddata, Ecore_Wl2_Event_Selection_Data_Ready *ev,
> Tmp_Info **tmp_info);
>  #endif
>
>  struct _Cnp_Atom
> @@ -272,6 +279,7 @@ struct _Cnp_Atom
>  #endif
>  #ifdef HAVE_ELEMENTARY_WL2
> Wl_Converter_Fn_Cb   wl_converter;
> +   Wl_Data_Preparer_Cb  wl_data_preparer;
>  #endif
>
> void*_term;
> @@ -476,6 +484,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  #endif
>  #ifdef HAVE_ELEMENTARY_WL2
>  .wl_converter = _wl_general_converter,
> +.wl_data_preparer = _wl_data_preparer_markup,
>  #endif
> },
> ARRAYINIT(CNP_ATOM_text_urilist) {
> @@ -487,6 +496,7 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  #endif
>  #ifdef HAVE_ELEMENTARY_WL2
>  .wl_converter = _wl_general_converter,
> +.wl_data_preparer = _wl_data_preparer_uri,
>  #endif
> },
> ARRAYINIT(CNP_ATOM_text_x_vcard) {
> @@ -496,6 +506,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  .x_converter = _x11_vcard_send,
>  .x_data_preparer = _x11_data_preparer_vcard,
>  #endif
> +#ifdef HAVE_ELEMENTARY_WL2
> +.wl_data_preparer = _wl_data_preparer_vcard,
> +#endif
> },
> ARRAYINIT(CNP_ATOM_image_png) {
>  .name = "image/png",
> @@ -504,6 +517,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  .x_converter = _x11_image_converter,
>  .x_data_preparer = _x11_data_preparer_image,
>  #endif
> +#ifdef HAVE_ELEMENTARY_WL2
> +.wl_data_preparer = _wl_data_preparer_image,
> +#endif
> },
> ARRAYINIT(CNP_ATOM_image_jpeg) {
>  .name = "image/jpeg",
> @@ -512,6 +528,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  .x_converter = _x11_image_converter,
>  .x_data_preparer = _x11_data_preparer_image,
>  #endif
> +#ifdef HAVE_ELEMENTARY_WL2
> +.wl_data_preparer = _wl_data_preparer_image,
> +#endif
> },
> ARRAYINIT(CNP_ATOM_image_bmp) {
>  .name = "image/x-ms-bmp",
> @@ -520,6 +539,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  .x_converter = _x11_image_converter,
>  .x_data_preparer = _x11_data_preparer_image,
>  #endif
> +#ifdef HAVE_ELEMENTARY_WL2
> +.wl_data_preparer = _wl_data_preparer_image,
> +#endif
> },
> ARRAYINIT(CNP_ATOM_image_gif) {
>  .name = "image/gif",
> @@ -528,6 +550,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  .x_converter = _x11_image_converter,
>  .x_data_preparer = _x11_data_preparer_image,
>  #endif
> +#ifdef HAVE_ELEMENTARY_WL2
> +.wl_data_preparer = _wl_data_preparer_image,
> +#endif
> },
> ARRAYINIT(CNP_ATOM_image_tiff) {
>  .name = "image/tiff",
> @@ -536,6 +561,9 @@ static Cnp_Atom _atoms[CNP_N_ATOMS] = {
>  .x_converter = _x11_image_converter,
>