Re: Communicating with the x-server
On Tue, 2014-03-04 at 12:45 +0100, Thomas Sondergaard wrote: My own thought was simply to have the x-server watch a property, say OPEN_URI, on the root window. Would that be the way to go? Well, that or add another request to the VNC extension. I'm not sure if there's a private namespace there (to avoid your request colliding with someone else's VNC feature addition). But if there is then that's probably what I'd do. The realvnc-based code base I'm working with doesn't have any code that watches properties like this. Is there a way to snoop on PropertyNotify events? Inside the server? Not really, no. The best you could do would be to wrap the slot for ProcChangeProperty in the dispatch vector to notice success and call out to your vnc code if the property matches. Which is ugly, but avoids needing to modify the core server. If you're okay with modifying the server it'd be cleaner to add a CallCallbacks() just before the return Success at the end of dixChangeWindowProperty. - ajax ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Re: Communicating with the x-server
Hi Adam, On 2014-03-05 20:10, Adam Jackson wrote: On Tue, 2014-03-04 at 12:45 +0100, Thomas Sondergaard wrote: My own thought was simply to have the x-server watch a property, say OPEN_URI, on the root window. Would that be the way to go? Well, that or add another request to the VNC extension. I'm not sure if there's a private namespace there (to avoid your request colliding with someone else's VNC feature addition). But if there is then that's probably what I'd do. That is exactly what I did. Turned out to be very straightforward. I simply overlooked this obvious possibility. The realvnc-based code base I'm working with doesn't have any code that watches properties like this. Is there a way to snoop on PropertyNotify events? Inside the server? Not really, no. The best you could do would be to wrap the slot for ProcChangeProperty in the dispatch vector to notice success and call out to your vnc code if the property matches. Which is ugly, but avoids needing to modify the core server. If you're okay with modifying the server it'd be cleaner to add a CallCallbacks() just before the return Success at the end of dixChangeWindowProperty. Ok. Thanks a lot. Thomas ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
Communicating with the x-server
Hi, I need to implement an Open URI feature for a VNC x-server. The idea is that a Qt application running under the VNC x-server can communicate to the X-server the URI it wants to open, the X-server then needs to send the URI via the VNC (RFB) protocol and the VNC client can then open the URI (via ShellExecute on windows and e.g. xdg-open on Unix). I got all the parts working except the communication between the Qt application and the xvncserver. What is the best way to do this? My own thought was simply to have the x-server watch a property, say OPEN_URI, on the root window. Would that be the way to go? The realvnc-based code base I'm working with doesn't have any code that watches properties like this. Is there a way to snoop on PropertyNotify events? Ideas and suggestions would be most welcome. Thank you for your time. Thomas ___ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel