https://bugzilla.gnome.org/show_bug.cgi?id=763298

Carlos Garnacho <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #323526|reviewed                    |none
             status|                            |
 Attachment #323526|0                           |1
        is obsolete|                            |
 Attachment #323527|0                           |1
        is obsolete|                            |

--- Comment #5 from Carlos Garnacho <[email protected]> ---
Created attachment 323608
  --> https://bugzilla.gnome.org/attachment.cgi?id=323608&action=edit
gdkdnd: Add private means to commit the drag status

The way gdk_drag_status() may be called multiple times during the
processing of GDK_DRAG_MOTION events throughout the widget hierarchy
brings some superfluous messaging going in, esp. when it's the last
request the one we want to honor, yet we emit messaging requests on
all.

This is barely appreciable in the X11 backend, but due to the design
of the wayland protocol, quick series of changes like this it have
some self-amplificating consequences which may end up flooding the
connection.

We can delegate this to a late "commit" call, performed within GDK
event management. This way gdk_drag_status() calls may be cached
and only result in windowing messaging once per GDK_DRAG_MOTION
event. Emitting the final status will also avoid spurious action
changes on the compositor and the other peer.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
wayland-bugs mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs

Reply via email to