[PATCH wayland] protocol: Improve data source notification around DnD progress

Mike Blumenkrantz zmike at samsung.com
Fri Oct 16 08:58:17 PDT 2015


On Fri, 16 Oct 2015 16:53:28 +0100
Daniel Stone <daniel at fooishbar.org> wrote:

> Hi,
> 
> On Wednesday, 30 September 2015, Carlos Garnacho <carlosg at gnome.org>
> wrote:
> 
> > Currently, there's no means for the DnD origin to know whether the
> > destination is actually finished with the DnD transaction, short of
> > finalizing it after the first transfer finishes, or leaking it
> > forever.
> >
> > But this poses other interoperation problems, drag destinations
> > might be requesting several mimetypes at once, might be just poking
> > to find out the most suitable format, might want to defer the
> > action to a popup, might be poking contents early before the
> > selection was dropped...
> >
> > In addition, data_source.cancelled is suitable for the situations
> > where the DnD operation fails (not on a drop target, no matching
> > mimetypes, etc..), but seems undocumented for that use (and unused
> > in weston's DnD).
> >
> > In order to improve the situation, the drag source should be
> > notified of all stages of DnD. In addition to documenting the
> > "cancelled" event for DnD purposes, The following 2 events have
> > been added:
> >
> > - wl_data_source.drop_performed: Happens when the operation has been
> >   physically finished (eg. the button is released), it could be the
> > right place to reset the pointer cursor back and undo any other
> > state resulting from the initial button press.
> > - wl_data_source.drag_finished: Happens when the destination side
> > destroys the wl_data_offer, at this point the source can just
> > forget all data related to the DnD selection as well, plus
> > optionally deleting the data on move operations.
> >
> > Signed-off-by: Carlos Garnacho <carlosg at gnome.org <javascript:;>>
> 
> 
>  Mike had a look at this from EFL - CCing him.
> 
> Cheers,
> Daniel

Hi,

Having reviewed this, and also having fully implemented the current DND
protocol, I think that this is a good idea and would be a worthwhile
addition. I have no suggestions for modifications or trivial
bikeshedding.

Regards,
Mike


More information about the wayland-devel mailing list