On Thu, Oct 1, 2015 at 8:48 PM, Bill Spitzak <spit...@gmail.com> wrote:
>
>
> On Wed, Sep 30, 2015 at 1:45 PM, Carlos Garnacho <carl...@gnome.org> wrote:
>>
>>
>> - 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.
>
>
> This should not be necessary. When the grab is lost, whatever client is
> under the pointer should get an enter event and should then set the cursor
> to whatever it wants. The dnd source should certainly not set the cursor in
> this case because it may set it to the wrong one, resulting in a blink of
> this wrong cursor (ie it will quickly change between the drag cursor, the
> cursor the source thought it should be, and the actual cursor for that
> screen location).

Remember, toolkits preserve some state. The drag source is in control
of the pointer cursor as long as the DnD operation holds, so it should
reset its internal current cursor to the regular one for the next time
the pointer enters the surface. And that's the bare minimals to be
done there, in X11-land toolkits usually implemented DnD and its
cursor changes through a grab, at least in the case of GTK+ this is
carried on, and brings in a lot more side effects than just an
extraneous cursor, so really can't wait until the next
wl_pointer.enter.

  Carlos
_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to