After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 699239 - Choose DnD/tooltip widget better on GtkOverlay and other layered containers
Choose DnD/tooltip widget better on GtkOverlay and other layered containers
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: Other
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2013-04-29 16:08 UTC by Carlos Garnacho
Modified: 2013-05-13 01:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (2.29 KB, patch)
2013-04-29 16:08 UTC, Carlos Garnacho
accepted-commit_now Details | Review

Description Carlos Garnacho 2013-04-29 16:08:57 UTC
Created attachment 242822 [details] [review]
patch

_gtk_widget_find_at_coords() in gtktooltip.c ends up recursing through children using gtk_container_forall(). As usually implementations of that function return children in an order suitable for draw(), those must be run in reverse order in that function in order to find the widget that would render last on that position (=topmost).

As this function is used in both drag n' drop and tooltips, the behavior of both features on overlayed widgets is fixed with the patch I'm attaching
Comment 1 Matthias Clasen 2013-05-04 23:26:09 UTC
Review of attachment 242822 [details] [review]:

ok, improves the situation for now.
Eventually, having proper accessors for children in z order would be nice