XClientMessageEvent(3)
π XClientMessageEvent(3) β ClientMessage event structure π«Ά
okay so this is the Xlib functions page for XClientMessageEvent(3), and itβs literally all about the ClientMessage event structure. Pull up a chair, bestie.
πΈ NAME πΈ
XClientMessageEvent β ClientMessage event structure. Thatβs the name, no cap.
π§ STRUCTURES π§
the struct for ClientMessage events is literally this:
typedef struct {
int type; /* ClientMessage */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Atom message_type;
int format;
union {
char b[20];
short s[10];
long l[5];
} data;
} XClientMessageEvent;
when this event lands, the members are set like this:
typeβ set to the event type constant name that uniquely identifies it. Example: when the X server reports aGraphicsExposeevent to a client application, it sends anXGraphicsExposeEventstructure with thetypemember set toGraphicsExpose. πdisplayβ set to a pointer to the display the event was read on.send_eventβ set toTrueif the event came from aSendEventprotocol request.serialβ set from the serial number reported in the protocol, but expanded from the 16-bit least-significant bits to a full 32-bit value.windowβ set to the window that is most useful to toolkit dispatchers.message_typeβ set to an atom that indicates how the data should be interpreted by the receiving client.formatβ set to8,16, or32; it specifies whether the data should be viewed as a list of bytes, shorts, or longs.dataβ a union that contains the membersb,s, andl. Theb,s, andlmembers represent data of twenty 8-bit values, ten 16-bit values, and five 32-bit values. Particular message types might not make use of all these values.
π¨ okay important: the X server places no interpretation on the values in thewindow,message_type, ordatamembers. Itβs giving βyou figure out the meaning, bestie.β
π¦ SEE ALSO π¦
these are the related pages, all of them, in the original order:
XAnyEvent(3)XButtonEvent(3)XCreateWindowEvent(3)XCirculateEvent(3)XCirculateRequestEvent(3)XColormapEvent(3)XConfigureEvent(3)XConfigureRequestEvent(3)XCrossingEvent(3)XDestroyWindowEvent(3)XErrorEvent(3)XExposeEvent(3)XFocusChangeEvent(3)XGraphicsExposeEvent(3)XGravityEvent(3)XKeymapEvent(3)XMapEvent(3)XMapRequestEvent(3)XPropertyEvent(3)XReparentEvent(3)XResizeRequestEvent(3)XSelectionClearEvent(3)XSelectionEvent(3)XSelectionRequestEvent(3)XUnmapEvent(3)XVisibilityEvent(3)
and then: Xlib - C Language X Interface π«Ά
thatβs the whole page, bestie. signed off from X Version 11, libX11 1.8.14, page XClientMessageEvent(3) β mwah πβ¨
π¦ where this page comes from
- alpine 3.24: libx11-doc 1.8.14-r0 Β· X11
- arch rolling: libx11 1.8.14-1 Β· MIT AND X11
- nixos 26.05: libx11 1.8.14
- nixpkgs unstable: libx11 1.8.14
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms