aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/dix
diff options
context:
space:
mode:
authorUlrich Sibiller <uli42@gmx.de>2019-10-28 17:45:49 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2019-11-01 16:36:24 +0100
commit6ed435e44765f83287dfe14129ba1d74bfcb9fde (patch)
treedd775d6219f0479522b58909509cf33ea609c1d2 /nx-X11/programs/Xserver/dix
parentf887d428c4443c2df31e831e6b1a3eec23a03aeb (diff)
downloadnx-libs-6ed435e44765f83287dfe14129ba1d74bfcb9fde.tar.gz
nx-libs-6ed435e44765f83287dfe14129ba1d74bfcb9fde.tar.bz2
nx-libs-6ed435e44765f83287dfe14129ba1d74bfcb9fde.zip
NXevents.c: use XYToWindow from dix
add a callback to determine the starting window.
Diffstat (limited to 'nx-X11/programs/Xserver/dix')
-rw-r--r--nx-X11/programs/Xserver/dix/events.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/nx-X11/programs/Xserver/dix/events.c b/nx-X11/programs/Xserver/dix/events.c
index c99e55a87..b29688857 100644
--- a/nx-X11/programs/Xserver/dix/events.c
+++ b/nx-X11/programs/Xserver/dix/events.c
@@ -1914,7 +1914,17 @@ PointInBorderSize(WindowPtr pWin, int x, int y)
return FALSE;
}
-#ifndef NXAGENT_SERVER
+/* define XYWINDOWCALLBACK if your DDX provides this callback */
+
+static WindowPtr GetXYStartWindow(WindowPtr pWin);
+
+#ifndef XYWINDOWCALLBACK
+static WindowPtr GetXYStartWindow(WindowPtr pWin)
+{
+ return pWin;
+}
+#endif
+
static WindowPtr
XYToWindow(int x, int y)
{
@@ -1922,7 +1932,7 @@ XYToWindow(int x, int y)
BoxRec box;
spriteTraceGood = 1; /* root window still there */
- pWin = ROOT->firstChild;
+ pWin = GetXYStartWindow(ROOT->firstChild);
while (pWin)
{
if ((pWin->mapped) &&
@@ -1960,7 +1970,6 @@ XYToWindow(int x, int y)
}
return spriteTrace[spriteTraceGood-1];
}
-#endif /* NXAGENT_SERVER */
#ifndef NXAGENT_SERVER
static Bool