Difficulties with Wayland D&D protocol - D&D source persistence

Martin Stransky stransky at redhat.com
Tue Oct 25 09:22:20 UTC 2022


On 10/24/22 12:29, Carlos Garnacho wrote:
>> - It's difficult to do D&D to another popup as the source one has to me
>> kept opened. That means we need to show popups which are not intended to
>> be shown together:
>>    - if the popups are adjacent, xdg-positoner can be used.
>>    - if the popups are not adjacent (an example on the clip),
>> wl_subsurface popup has to be used with its consequences (buggy
>> compositor/gtk3 implementation).
>>
>> So may be the D&D source persistence condition relaxed?
> 
> To allow a fix for this case, I think it would be more backwards
> compatible and coherent to relax wl_data_device.start_drag conditions,
> so that it's only required that the serial/grab is on a surface of the
> same client, and a different source surface may be used. Firefox could
> then pass the toplevel surface as the drag source. This way lifetime
> correctness is guaranteed, and "snap back" animations on failed DnD
> have a surface to return to.

Yes, relaxing wl_data_device.start_drag conditions would be enough here.

Thanks.

-- 
Martin Stransky
Software Engineer / Red Hat, Inc



More information about the wayland-devel mailing list