Hello,

I'm working on making compiz use XI2 to get more fine-grain hold
on keypresses.  I'm however getting an issue: I do not always get
NotifyGrab FocusIn events from the root window when a client calls

XGrabKeyboard (mydisplay, mywindow, True, GrabModeAsync, GrabModeAsync, 
CurrentTime);

, which prevents from properly respecting grabbing.


Unfortunately, I didn't manage to reproduce the issue with a simpler X
root event listener: runnning

XSelectInput(mydisplay, DefaultRootWindow(mydisplay), FocusChangeMask);

does properly bring focus out/in NotifyGrab events, but these events
don't get to Compiz. I also tried to listen on the window itself with
the same result: my simple event listener gets the event, but Compiz
does not.

Oddly enough, this seems to depend on the application: kvm / virtualbox
grabbing have the issue, but vncviewer grabbing doesn't have the issue.

Reading https://tronche.com/gui/x/xlib/input/XGrabKeyboard.html tells me
that there should always be FocusIn / FocusOut events being generated,
so I don't immediately see where to look for in the differences between
by simple listener and Compiz.

Could there be some undocumented cases where such events are not
generated?  Any idea where I could look in the X server to check what is
happening?

Samuel
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to