Undermining XGrabKeyboard
Sebastian
seppschrot at gmx.de
Tue Mar 4 09:19:36 PST 2008
On Tue, 2008-03-04 at 08:27 -0800, Octavio Alvarez wrote:
> In xorg.conf:
>
> Section "ServerFlags"
> Option "AllowDeactivateGrabs" "On"
> Option "AllowClosedownGrabs" "On"
> EndSection
>
> This should allow you to release grabs with Ctrl+Alt+* and Ctrl+Alt+/.
Hi,
thanks, but this seems to work only if the grabbing application is
"well-behaving" anyway. (i.e. has working event processing loop)
It fails when a application runs havok like this cruft here:
WARNING: It may lock up your windowing system for at least 6 seconds. I
removed the event loop on purpose so that it has the safety net of
returning after 6 seconds.
***********************************************************
***********************************************************
#include <X11/Xlib.h>
int main()
{
Display *disp;
Window win;
XEvent e;
int screen;
disp=XOpenDisplay(NULL);
screen=DefaultScreen(disp);
win=XCreateSimpleWindow(disp, RootWindow(disp, screen), 10, 10, 100,
100, 1, BlackPixel(disp, screen), WhitePixel(disp, screen));
XSelectInput(disp, win, ExposureMask | KeyPressMask);
XMapWindow(disp, win);
XNextEvent(disp, &e);
XGrabKeyboard(disp, win, True, GrabModeSync, GrabModeSync,
CurrentTime);
sleep(6);
XCloseDisplay(disp);
return 0;
}
More information about the xorg
mailing list