xcb_expose_event_t(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_expose_event_t(3) β€” an XCB Events moment ✨

okay so bestie, we're in the XCB Events corner of the manual, and today's main character is xcb_expose_event_t. she's giving "your window got damaged and the server is telling you to repaint, bestie". πŸ’–


✨ NAME ✨

xcb_expose_event_t β€” NOT YET DOCUMENTED</p> πŸ™ˆ (yeah that's literally what it says, no cap)


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <xcb/xproto.h>

πŸŽ€ Event datastructure πŸŽ€

typedef struct xcb_expose_event_t {
    uint8_t      response_type;
    uint8_t      pad0;
    uint16_t     sequence;
    xcb_window_t window;
    uint16_t     x;
    uint16_t     y;
    uint16_t     width;
    uint16_t     height;
    uint16_t     count;
    uint8_t      pad1[2];
} xcb_expose_event_t;

look at her. struct queen. πŸ‘‘


🌸 EVENT FIELDS 🌸

  • response_type β€” the type of this event, which in this case is XCB_EXPOSE. plot twist: this field is also chillin' inside the xcb_generic_event_t, so you can use it to tell your events apart from each other. vibe check passed. ✨
  • sequence β€” the sequence number of the last request that the X11 server actually processed. it's the receipts. 🧾
  • window β€” the exposed (damaged) window. she's the one going through it rn. 😭
  • x β€” the X coordinate of the left-upper corner of the exposed rectangle, relative to the window's origin. πŸ“
  • y β€” the Y coordinate of the left-upper corner of the exposed rectangle, relative to the window's origin. πŸ“
  • width β€” the width of the exposed rectangle. πŸ“
  • height β€” the height of the exposed rectangle. πŸ“
  • count β€” the amount of Expose events following this one. and here's the lowkey life hack: simple applications that do not want to optimize redisplay by distinguishing between subareas of its window can just ignore all Expose events with nonzero counts and perform full redisplays on events with zero counts. so if count is 0, that's your cue to do the whole thing. slay. πŸ’…

πŸ’œ DESCRIPTION πŸ’œ

...it's empty bestie. genuinely nothing here. the DESCRIPTION section said "no thoughts, head empty" and walked off. we move. 🫢


⭐ SEE ALSO ⭐

  • xcb_generic_event_t(3) β€” go read that one too, she's the blueprint. 🌈

πŸ‘‘ AUTHOR πŸ‘‘

Generated from xproto.xml. Contact xcb@lists.freedesktop.org for corrections and improvements. fr fr, they wanna hear from you if something's off. πŸ’Œ


no notes, just respect. this page is X Version 11, libxcb 1.17.0, and it's iconic for that alone. πŸŽ€βœ¨ bye bestie, go repaint your windows πŸ’–