GNOME Bugzilla – Bug 586756
gdk_window_get_origin returns wrong type of coordinates
Last modified: 2017-08-24 21:46:21 UTC
If I understand things right, Gdk operates in 32-bit coordinates and employs a translation scrolling-type layer to cope with X11's 16-bit restriction. The X11 coordinates are not supposed to be visible to the Gdk user, possibly with the exception of the function gdk_window_get_internal_paint_info. But gdk_window_get_origin returns X11 coordinates. Hence for a very large window -- the window of a foocanvas to be exact -- the coordinates get clipped at +/- 16k. My workaround is to get the offset via gdk_window_get_internal_paint_info. Caution: _gdk_windowing_window_get_pointer seems to rely on getting X11 coordinates from gdk_window_get_origin.
Probably obsolete.
Please do reopen if it's not!