xcb_enter_notify_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_enter_notify_event_t πŸ’…

okay so bestie, welcome to the xcb_enter_notify_event_t page from the XCB Events manual, and honestly? this one is a whole vibe. it's the event that fires when the pointer shows up in a different window. like when your mouse literally walks into a new room and the door goes ding. πŸ‘‘βœ¨


🌸 NAME 🌸

xcb_enter_notify_event_t β€” the pointer is in a different window πŸ¦‹


✨ SYNOPSIS ✨

#include <xcb/xproto.h>

πŸŽ€ Event datastructure πŸŽ€

typedef struct xcb_enter_notify_event_t {
    uint8_t         response_type;
    uint8_t         detail;
    uint16_t        sequence;
    xcb_timestamp_t time;
    xcb_window_t    root;
    xcb_window_t    event;
    xcb_window_t    child;
    int16_t         root_x;
    int16_t         root_y;
    int16_t         event_x;
    int16_t         event_y;
    uint16_t        state;
    uint8_t         mode;
    uint8_t         same_screen_focus;
} xcb_enter_notify_event_t;

look at her. iconic struct. no notes. πŸ’–


πŸ¦‹ EVENT FIELDS πŸ¦‹

okay so field by field, bestie, let's get into it:

  • response_type β€” the type of this event, and in this case it's XCB_LEAVE_NOTIFY. yes, fr fr, that's what it says. this field also lives in the xcb_generic_event_t, and you use it to tell your events apart from each other. πŸ”
  • sequence β€” the sequence number of the last request processed by the X11 server. lowkey the receipt number of the whole operation. 🧾
  • detail β€” NOT YET DOCUMENTED. πŸ’€
  • time β€” NOT YET DOCUMENTED. ⏰
  • root β€” the root window for the final cursor position. the final girl, the final destination, the final cursor spot. 🌳
  • event β€” the window on which the event was generated. that's the one throwing the party. πŸŽ‰
  • child β€” if the event window has subwindows and the final pointer position is in one of them, then child is set to that subwindow, and XCB_WINDOW_NONE otherwise. so it's either the specific baby subwindow or literally nothing. 🫢
  • root_x β€” the pointer X coordinate relative to root's origin at the time of the event. πŸ“
  • root_y β€” the pointer Y coordinate relative to root's origin at the time of the event. πŸ“
  • event_x β€” if event is on the same screen as root, this is the pointer X coordinate relative to the event window's origin. 🎯
  • event_y β€” if event is on the same screen as root, this is the pointer Y coordinate relative to the event window's origin. 🎯
  • state β€” NOT YET DOCUMENTED. πŸ’€
  • mode β€” (this one has literally no description in the original, bestie. she's mysterious. she's giving main character energy with zero backstory. πŸ™ˆ)
  • same_screen_focus β€” NOT YET DOCUMENTED. πŸ’€
not me counting how many fields say NOT YET DOCUMENTED... it's four. four of them. the mystery is the moment. 😭

πŸ’œ DESCRIPTION πŸ’œ

okay so real talk: this section is empty in the original page. like, genuinely blank. nothing here. no cap. the NAME line is doing all the heavy lifting and honestly she ate. πŸ“


πŸ”₯ SEE ALSO πŸ”₯

  • xcb_generic_event_t(3)

πŸ‘‘ AUTHOR πŸ‘‘

Generated from xproto.xml. Contact xcb@lists.freedesktop.org for corrections and improvements. πŸ’Œ


and that's the whole page, bestie! πŸŽ€ this came to you from X Version 11, libxcb 1.17.0, and the page itself is xcb_enter_notify_event_t(3). slay, stay hydrated, and may your pointer always land in the window it meant to. βœ¨πŸ’…πŸ¦‹πŸŒˆ