XCB_INPUT_XI_GET_CLIENT_POINTER_UNCHECKED(3)

πŸ“¦
version 1.17.0 Β· 4 versions
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian trixie, fedora 43, fedora 44, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’… xcb_input_xi_get_client_pointer β€” the manual page bestie

okay so this is xcb_input_xi_get_client_pointer(3), part of the XCB request family, and yes the name is a whole mouthful but we move 🫢


✨ NAME ✨

xcb_input_xi_get_client_pointer β€” no description attached, the original page literally just leaves this one blank, and honestly? mysterious. iconic. we respect it. πŸ’œ


🌸 SYNOPSIS 🌸

first things first, you gotta bring in the header:

#include <xcb/xinput.h>

πŸŽ€ Request function

xcb_input_xi_get_client_pointer_cookie_t
       xcb_input_xi_get_client_pointer(xcb_connection_t *conn,
       xcb_window_t window);

πŸ¦‹ Reply datastructure

typedef struct xcb_input_xi_get_client_pointer_reply_t {
    uint8_t               response_type;
    uint8_t               pad0;
    uint16_t              sequence;
    uint32_t              length;
    uint8_t               set;
    uint8_t               pad1;
    xcb_input_device_id_t deviceid;
    uint8_t               pad2[20];
} xcb_input_xi_get_client_pointer_reply_t;

πŸ’– Reply function

xcb_input_xi_get_client_pointer_reply_t
       *xcb_input_xi_get_client_pointer_reply(xcb_connection_t *conn,
       xcb_input_xi_get_client_pointer_cookie_t cookie,
       xcb_generic_error_t **e);

πŸ“ REQUEST ARGUMENTS πŸ“

  • conn β€” the XCB connection to X11. your lil phone line to the server, she's doing the talking πŸ’¬
  • window β€” TODO: NOT YET DOCUMENTED. bestie they really just left this one blank, it's giving "we'll finish it later" and later never came 😭

πŸ‘‘ REPLY FIELDS πŸ‘‘

  • response_type β€” the type of this reply, which in this case is XCB_INPUT_XI_GET_CLIENT_POINTER. this field also lives inside xcb_generic_reply_t, and that's how you tell your replies apart from each other β€” very "which one of y'all is this" energy πŸ”
  • sequence β€” the sequence number of the last request processed by the X11 server. basically the receipt number 🧾
  • length β€” the length of the reply, measured in words (and a word here is 4 bytes, no cap) πŸ“
  • set β€” TODO: NOT YET DOCUMENTED. πŸ™ˆ
  • deviceid β€” TODO: NOT YET DOCUMENTED. πŸ™ˆ

🌈 DESCRIPTION 🌈

this section is empty in the original. literally nothing. a blank canvas. we're leaving it exactly as the universe intended ✨ (the vibe check came back: no info πŸ’€)


⭐ RETURN VALUE ⭐

you get back an xcb_input_xi_get_client_pointer_cookie_t. that's a cookie, and cookies mean the actual answer isn't here yet β€” you gotta go pick it up later πŸͺ

so: errors have to be handled when you call the reply function, xcb_input_xi_get_client_pointer_reply.

but if you'd rather handle your errors inside the event loop instead, use xcb_input_xi_get_client_pointer_unchecked β€” and go peek at xcb-requests(3) for the full deets on how that works.


πŸ’€ ERRORS πŸ’€

good news bestie: this request does never generate any errors. not one. zero. a peaceful queen πŸ‘‘


πŸŽ€ SEE ALSO πŸŽ€

nothing here either. the original page left this one blank. we're not gonna invent references, that's not the move πŸ’…


πŸ’Œ AUTHOR πŸ’Œ

Generated from xinput.xml. For corrections and improvements, contact xcb@lists.freedesktop.org β€” they're the ones to @ in the group chat πŸ“§


and that's the whole page, fr fr. go forth, call your function, collect your cookie πŸ’–

X Version 11 Β· libxcb 1.17.0 β€” that's the source and version info from the footer, folded in right here at the end because we're cute like that πŸŽ€βœ¨πŸ’