XSelectionRequestEvent(3)
π NAME π
okay bestie, this is XSelectionRequestEvent(3) from the <rainbow>XLIB FUNCTIONS</rainbow> corner of the manual, and it's the page for the <pink>SelectionRequest event structure</pink>. It's giving one very specific Xlib event struct, and we're gonna read it together like a group chat. π
β¨
π STRUCTURES π
The structure for SelectionRequest events contains this, and yes, I'm keeping it character-for-character because we do not mess with typedefs in this house:
typedef struct {
int type; /* SelectionRequest */
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 owner;
Window requestor;
Atom selection;
Atom target;
Atom property;
Time time;
} XSelectionRequestEvent;
When you receive this event, the structure members are set as follows, no cap:
typeβ set to the event type constant name that uniquely identifies it. Example time: when the X server reports aGraphicsExposeevent to a client application, it sends anXGraphicsExposeEventstructure with thetypemember set toGraphicsExpose. iconic.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β the prose says this member is set to the window that is most useful to toolkit dispatchers. (Yeah, the page sayswindowin the generic event bit even though the typedef above doesn't list awindowfield β I'm just preserving the facts, bestie.)ownerβ set to the window that was specified by the current owner in itsXSetSelectionOwnercall.requestorβ set to the window requesting the selection.selectionβ set to the atom that names the selection. For example,PRIMARYis used to indicate the primary selection.targetβ set to the atom that indicates the type the selection is desired in.propertyβ can be a property name orNone.timeβ set to the timestamp orCurrentTimevalue from theConvertSelectionrequest.
π¦ SEE ALSO π¦
like, go read these too, they're the event-struct cinematic universe, fr fr:
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)XSetSelectionOwner(3)XUnmapEvent(3)XVisibilityEvent(3)
Also on the list: Xlib - C Language X Interface. That's the big-picture Xlib text, bestie. π
okay that's the page, mwah π β the footer situation is <pink>X Version 11</pink>, <pink>libX11 1.8.14</pink>, and the page title XSelectionRequestEvent(3). There's no date in that footer, so I'm not inventing one; no cap, just facts and sparkle. β¨π«Ά
π¦ 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