Support DND without raising
Submitted by Gregory Merchan
To eventually support raiseless DnD without extra work from toolkit users, a way to determine whether a widget may be a drag source is needed. A flag or a property in GtkWidget would suffice.
Used in conjunction with globally active input (see bug #68817 and the rejected patch at bug #64613 ), this will allow the main loop to determine whether a ButtonPress should immediately set focus or defer setting focus until a release or other event.
Regarding the rejected patch at #64613 : Note that this will not require translation of the WM_TAKE_FOCUS message into a GdkEvent, but does require a way to really set focus from Gtk+. The existing API, gdk_window_focus() which sends a _NET_ACTIVE_WINDOW message, does not suffice for this.
Related Metacity reports are bug #128134 and bug #133034 .