summaryrefslogtreecommitdiffstats
path: root/unix/tkUnixWm.c
diff options
context:
space:
mode:
authorculler <culler>2018-12-17 14:11:38 (GMT)
committerculler <culler>2018-12-17 14:11:38 (GMT)
commit8ba154154bdb9c4923685db7baff72c1c7a085c5 (patch)
treee597bb5ac779da39dc8e2bf7fcfe61da9c803c6f /unix/tkUnixWm.c
parent3a8a72f3acdebde1221166853af70577e5adbc11 (diff)
downloadtk-8ba154154bdb9c4923685db7baff72c1c7a085c5.zip
tk-8ba154154bdb9c4923685db7baff72c1c7a085c5.tar.gz
tk-8ba154154bdb9c4923685db7baff72c1c7a085c5.tar.bz2
Restore the old behavior with unix title bars and borders, but document
and test it.
Diffstat (limited to 'unix/tkUnixWm.c')
-rw-r--r--unix/tkUnixWm.c36
1 files changed, 3 insertions, 33 deletions
diff --git a/unix/tkUnixWm.c b/unix/tkUnixWm.c
index 5bee6ba..fa54f56 100644
--- a/unix/tkUnixWm.c
+++ b/unix/tkUnixWm.c
@@ -5875,41 +5875,11 @@ Tk_CoordsToWindow(
goto gotToplevel;
} else {
- /* Ouch! The point is not in the reparented window!
- *
- * This can happen with Gnome3-based window managers.
- * They provide an invisible border around a window to
- * help grab the edge for resizing. When the point is
- * inside the invisible border of some window,
- * XTranslateCoordinates will set the child to be a
- * reparent of that window. But we don't want that
- * window. What we have to do in this case is to search
- * through all of the toplevels below this one and find
- * the highest one which actually contains the point.
+ /*
+ * Return NULL if the point is in the title bar or border.
*/
- TkWindow **windows, **window_ptr;
- windows = TkWmStackorderToplevel(
- ((TkWindow *) tkwin)->mainPtr->winPtr);
- if (windows == NULL) {
- return NULL;
- }
- winPtr = NULL;
- for (window_ptr = windows; *window_ptr ; window_ptr++) {
- wmPtr = (*window_ptr)->wmInfoPtr;
- if (wmPtr == NULL) {
- continue;
- }
- if (PointInWindow(x, y, wmPtr)) {
- winPtr = *window_ptr;
- break;
- }
- }
- ckfree(windows);
- if (winPtr == NULL) {
- return NULL;
- }
- goto gotToplevel;
+ return NULL;
}
}
if (wmPtr->wrapperPtr != NULL) {