xcb_shape_rectangles(3)
π xcb_shape_rectangles β the manual page, but make it make sense π
okay bestie, so this is xcb_shape_rectangles(3), a page from the XCB Requests manual. Pull up a chair, grab a strawberry π, and let's get into it.
πΈ NAME πΈ
xcb_shape_rectangles β
(and yes, the description after that dash is literally empty in the original. iconic of it. we move.) π
β¨ SYNOPSIS β¨
First things first, you gotta include the header, no cap:
#include <xcb/shape.h>
π¦ Request function π¦
xcb_void_cookie_t xcb_shape_rectangles(xcb_connection_t *conn,
xcb_shape_op_t operation, xcb_shape_kind_t destination_kind,
uint8_t ordering, xcb_window_t destination_window,
int16_t x_offset, int16_t y_offset, uint32_t rectangles_len,
const xcb_rectangle_t *rectangles);
look at her. so many parameters. so much main character energy. π
π REQUEST ARGUMENTS π
okay so here's the whole cast list, one by one:
connβ your XCB connection to X11. your little lifeline to the server, fr fr.operationβ TODO: NOT YET DOCUMENTED.destination_kindβ TODO: NOT YET DOCUMENTED.orderingβ TODO: NOT YET DOCUMENTED.destination_windowβ TODO: NOT YET DOCUMENTED.x_offsetβ TODO: NOT YET DOCUMENTED.y_offsetβ TODO: NOT YET DOCUMENTED.rectangles_lenβ TODO: NOT YET DOCUMENTED.rectanglesβ TODO: NOT YET DOCUMENTED.
not me reading eight straight TODOs π bestie the docs are not documenting. the original really said "figure it out" and left. it's giving mystery. it's giving β¨enigmaticβ¨. i'm just the messenger, so if you need the real tea on these, the source is right there β i refuse to make stuff up because that would be lying and lying is not slay. π«Ά
π DESCRIPTION π
...and that's it. that's the section. it's empty. the DESCRIPTION describes nothing. a true minimalist queen, honestly. ππ
π RETURN VALUE π
She returns an xcb_void_cookie_t. That's the vibe. Any errors (if any show up) have to be handled in the event loop, not right here β so set up your loop, bestie, don't skip it.
But if you want to handle errors directly with xcb_request_check instead, then you use xcb_shape_rectangles_checked. different function, different energy. see xcb-requests(3) for the full details on how that all works. π
π₯ ERRORS π₯
good news for your blood pressure: this request does never generate any errors. not a single one. zero. clean sheet. we love a low-drama request. β¨
π SEE ALSO π
(blank. nothing. tumbleweed. π the original lists nothing here, so there's nothing for me to send you to. i'm not gonna invent references, that's not the move.)
π§ AUTHOR π§
Generated from shape.xml. If you spot something wrong or wanna make it better, contact xcb@lists.freedesktop.org for corrections and improvements. they're the ones who actually know things. π
π warning-ish reminder: everything above that says "TODO: NOT YET DOCUMENTED" genuinely is not documented in the original. i'm keeping it 100 with you β i'm not filling in gaps with guesses, because a guess dressed up as a manpage is how people get hurt. π
and that's the whole page, bestie! π you read a manual and slayed. this one came to you from X Version 11, libxcb 1.17.0, the xcb_shape_rectangles(3) page β mwah, go forth and shape some rectangles. πππ¦π
π¦ where this page comes from
- alpine 3.22: libxcb-doc 1.17.0-r0 Β· MIT
- alpine 3.23: libxcb-doc 1.17.0-r1 Β· MIT
- alpine 3.24: libxcb-doc 1.17.0-r2 Β· MIT
- arch rolling: libxcb 1.17.0-1 Β· X11
- centos-stream 10: libxcb-devel 1.17.0-3.el10 Β· X11
- debian trixie: libxcb-doc 1.17.0-2
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- nixpkgs unstable: libxcb 1.17.0
- opensuse-leap 16.0: libxcb-devel-doc 1.17.0-160000.2.2 Β· MIT
- ubuntu questing: libxcb-doc 1.17.0-2build1
- ubuntu resolute: libxcb-doc 1.17.0-2ubuntu1
- ubuntu stonking: libxcb-doc 1.17.0-2ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms