From 9b934a44772ded19812ed4665265cc43fb751169 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Thu, 9 Feb 2017 23:35:00 +0000 Subject: nxagent: Use SetNotifyFd to receive events. Inspired by X.org commit: commit 55c2e1a3aa587c58a74066724e11e30b3df267b8 Author: Keith Packard Date: Mon Dec 7 15:11:33 2015 -0800 xnest: Use SetNotifyFd to receive events Signed-off-by: Keith Packard Reviewed-by: Adam Jackson --- nx-X11/programs/Xserver/hw/nxagent/Display.c | 4 ++-- nx-X11/programs/Xserver/hw/nxagent/Init.c | 7 +++++++ nx-X11/programs/Xserver/hw/nxagent/Init.h | 2 ++ nx-X11/programs/Xserver/hw/nxagent/Screen.c | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) (limited to 'nx-X11/programs/Xserver') diff --git a/nx-X11/programs/Xserver/hw/nxagent/Display.c b/nx-X11/programs/Xserver/hw/nxagent/Display.c index 599b335f6..c683751f6 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Display.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Display.c @@ -2877,7 +2877,7 @@ void nxagentAddXConnection() "to the device set.\n", nxagentXConnectionNumber); #endif - AddEnabledDevice(nxagentXConnectionNumber); + SetNotifyFd(XConnectionNumber(nxagentDisplay), nxagentNotifyConnection, X_NOTIFY_READ, NULL); } void nxagentRemoveXConnection() @@ -2887,7 +2887,7 @@ void nxagentRemoveXConnection() "from the device set.\n", nxagentXConnectionNumber); #endif - RemoveEnabledDevice(nxagentXConnectionNumber); + RemoveNotifyFd(nxagentXConnectionNumber); } /* diff --git a/nx-X11/programs/Xserver/hw/nxagent/Init.c b/nx-X11/programs/Xserver/hw/nxagent/Init.c index 218766e06..f15f2cb0a 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Init.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Init.c @@ -58,6 +58,7 @@ is" without express or implied warranty. #include "Pointer.h" #include "Keyboard.h" #include "Handlers.h" +#include "Events.h" #include "Init.h" #include "Args.h" #include "Client.h" @@ -407,6 +408,12 @@ FIXME: These variables, if not removed at all because have probably blackRoot = TRUE; } +void +nxagentNotifyConnection(int fd, int ready, void *data) +{ + nxagentDispatchEvents(NULL); +} + void InitInput(argc, argv) int argc; char *argv[]; diff --git a/nx-X11/programs/Xserver/hw/nxagent/Init.h b/nx-X11/programs/Xserver/hw/nxagent/Init.h index 29b1100e7..34a17067f 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Init.h +++ b/nx-X11/programs/Xserver/hw/nxagent/Init.h @@ -49,4 +49,6 @@ extern int nxagentX2go; extern ServerGrabInfoRec nxagentGrabServerInfo; +void nxagentNotifyConnection(int fd, int ready, void *data); + #endif /* __Init_H__ */ diff --git a/nx-X11/programs/Xserver/hw/nxagent/Screen.c b/nx-X11/programs/Xserver/hw/nxagent/Screen.c index 3039f4139..01d8c1fc7 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Screen.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Screen.c @@ -2781,7 +2781,7 @@ int nxagentShadowInit(ScreenPtr pScreen, WindowPtr pWin) "to the device set.\n", fd); #endif - AddEnabledDevice(nxagentShadowXConnectionNumber); + SetNotifyFd(nxagentShadowXConnectionNumber, nxagentNotifyConnection, X_NOTIFY_READ, NULL); accessPixmapID = FakeClientID(serverClient -> index); -- cgit v1.2.3