@neauoire a) what are you up to?; b) i'm not sure; c) any X program knows the IDs of any windows it creates, and it is free to tell anyone (you, me, another program) about those IDs. And given an ID (they are 32-bit numbers i think) any program can now send events to that window. I think xterm for example advertises its Window ID in its env so that cli programs can, in principle, do X things to their containing xterm.; d) i don't use X any more so i can't poke around easily.
@drj my goal is to make an on-screen keyboard in Uxn, it's something I'd use daily.
The uxn emulator I have is written in x11 itself, but I would like not to have to modify the emulator, ideally I'd use a small intermediate program, like:
uxn11 keyboard.rom | some_little_program
The keyboard rom will send stdout events, and some_little_program will be the bit that handles the logic of which keycode to send, and which window to send it to