xcb_query_pointer - get pointer coordinates
Contents
Description
Gets the root window the pointer is logically on and the pointer coordinates relative to the root win‐
dow's origin.
Errors
xcb_window_error_t
The specified window does not exist.
Name
xcb_query_pointer - get pointer coordinates
Reply Fields
response_type
The type of this reply, in this case XCB_QUERY_POINTER. This field is also present in the
xcb_generic_reply_t and can be used to tell replies apart from each other.
sequence The sequence number of the last request processed by the X11 server.
length The length of the reply, in words (a word is 4 bytes).
same_screen
If same_screen is False, then the pointer is not on the same screen as the argument window,
child is None, and win_x and win_y are zero. If same_screen is True, then win_x and win_y are
the pointer coordinates relative to the argument window's origin, and child is the child con‐
taining the pointer, if any.
root The root window the pointer is logically on.
child The child window containing the pointer, if any, if same_screen is true. If same_screen is
false, XCB_NONE is returned.
root_x The pointer X position, relative to root.
root_y The pointer Y position, relative to root.
win_x The pointer X coordinate, relative to child, if same_screen is true. Zero otherwise.
win_y The pointer Y coordinate, relative to child, if same_screen is true. Zero otherwise.
mask The current logical state of the modifier keys and the buttons. Note that the logical state of
a device (as seen by means of the protocol) may lag the physical state if device event process‐
ing is frozen.
Request Arguments
conn The XCB connection to X11.
window A window to check if the pointer is on the same screen as window (see the same_screen field in
the reply).
Return Value
Returns an xcb_query_pointer_cookie_t. Errors have to be handled when calling the reply function
xcb_query_pointer_reply.
If you want to handle errors in the event loop instead, use xcb_query_pointer_unchecked. See xcb-re‐quests(3) for details.
See Also
xcb-requests(3)
Synopsis
#include<xcb/xproto.h>Requestfunction
xcb_query_pointer_cookie_t xcb_query_pointer(xcb_connection_t *conn, xcb_window_t window);
Replydatastructure
typedef struct xcb_query_pointer_reply_t {
uint8_t response_type;
uint8_t same_screen;
uint16_t sequence;
uint32_t length;
xcb_window_t root;
xcb_window_t child;
int16_t root_x;
int16_t root_y;
int16_t win_x;
int16_t win_y;
uint16_t mask;
uint8_t pad0[2];
} xcb_query_pointer_reply_t;
Replyfunction
xcb_query_pointer_reply_t *xcb_query_pointer_reply(xcb_connection_t *conn,
xcb_query_pointer_cookie_t cookie, xcb_generic_error_t **e);
