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

Bill Spitzak spitzak at gmail.com
Tue Nov 3 11:50:17 PST 2015


On Mon, Nov 2, 2015 at 9:28 AM, Carlos Garnacho <carlosg at gnome.org> wrote:

> On Fri, Oct 30, 2015 at 7:10 PM, Bill Spitzak <spitzak at gmail.com> wrote:
> > I think what is wanted is an indication that the drag really did finish.
> For
>
> That's data_source.drag_finished in the patch you're commenting.
>

According to the documentation that is the indicator that the destination
will no longer need any data from the source, which is different. However I
suspect the documentation is somewhat misleading, and could be rewritten to
indicate that this implies *both* that the data source is no longer needed,
and the action is finished.

For instance a file drop may read the URL from the data source, but then
start copying the file. It no longer needs the data source and thus it may
be useful to send an indicator of this (and the commends on dnd_finished
seem to indicate that is the purpose of it). But there may still be a need
for an indication that the copying has successfully finished.


> > instance a file browser acting as the source of a "move" action will
> want a
> > confirmation that the move actually worked before it actually destroys
> the
> > source file...
> This is not how file managers implement this.
>
> Only the URIs and the intent are transferred through DnD, file
> managers are then smart enough to...
>

I'm thinking of instances where only the destination knows how to write the
data, but only the source has permission to remove the file. A dropbox-like
web client is a good example.

Also for data (ie not files), it may still be desirable to implement move
vs copy. The source wants assurances that it really did work (which the
destination may not figure out until well after it has accepted and read
the data from the source). Only then can the source do any irreversable
deletion of the moved data.

The text I am talking about is this:

> +    <event name="dnd_finished" since="3">
> +      <description summary="the drag-and-drop operation concluded">
> +     The drop destination finished interoperating with this data
> +     source, the client is now free to destroy this data source and
> +     free all associated data.

I find the text "finished interoperating" misleading. I suppose you could
claim that it is "interoperating" because it is still sending events, but I
think most users read this as "it is still looking at the data in the
source". My version:

> +    <event name="dnd_finished" since="3">
> +      <description summary="the drag-and-drop operation concluded">
> +     The drop destination finished the drop action. The client is now
free
> +     to destroy this data source and all associated data, and to complete
> +     local portions of the action.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20151103/dd4cbfe5/attachment.html>


More information about the wayland-devel mailing list