DOKK / manpages / debian 12 / libx11-doc / XQueryPointer.3.en
XQueryPointer(3) XLIB FUNCTIONS XQueryPointer(3)

XQueryPointer - get pointer coordinates

Bool XQueryPointer(Display *display, Window w, Window *root_return, Window *child_return, int *root_x_return, int *root_y_return, int *win_x_return, int *win_y_return, unsigned int *mask_return);

Returns the child window that the pointer is located in, if any.
Specifies the connection to the X server.
Returns the current state of the modifier keys and pointer buttons.
Returns the root window that the pointer is in.

Return the pointer coordinates relative to the root window's origin.
Specifies the window.

Return the pointer coordinates relative to the specified window.

The XQueryPointer function returns the root window the pointer is logically on and the pointer coordinates relative to the root window's origin. If XQueryPointer returns False, the pointer is not on the same screen as the specified window, and XQueryPointer returns None to child_return and zero to win_x_return and win_y_return. If XQueryPointer returns True, the pointer coordinates returned to win_x_return and win_y_return are relative to the origin of the specified window. In this case, XQueryPointer returns the child that contains the pointer, if any, or else None to child_return.

XQueryPointer returns the current logical state of the keyboard buttons and the modifier keys in mask_return. It sets mask_return to the bitwise inclusive OR of one or more of the button or modifier key bitmasks to match the current state of the mouse buttons and the modifier keys.

XQueryPointer can generate a BadWindow error.

A value for a Window argument does not name a defined Window.

XGetWindowAttributes(3), XQueryTree(3)
Xlib - C Language X Interface

libX11 1.8.4 X Version 11