GNU Emacs Lisp Reference Manual
25.15: Coordinates and Windows
This section describes how to relate screen coordinates to windows.
- Function: window-at x y &optional frame
- This function returns the window containing the specified cursor position in the frame frame. The coordinates x and y are measured in characters and count from the top left corner of the frame. If they are out of range,
window-at returns nil. If you omit frame, the selected frame is used.
- Function: coordinates-in-window-p coordinates window
- This function checks whether a particular frame position falls within the window window.
The argument coordinates is a cons cell of this form:
(x . y)
The coordinates x and y are measured in characters, and count from the top left corner of the screen or frame.
The value of coordinates-in-window-p is non-nil if the coordinates are inside window. The value also indicates what part of the window the position is in, as follows:
(relx . rely)- The coordinates are inside window. The numbers relx and rely are the equivalent window-relative coordinates for the specified position, counting from 0 at the top left corner of the window.
mode-line- The coordinates are in the mode line of window.
vertical-split- The coordinates are in the vertical line between window and its neighbor to the right. This value occurs only if the window doesn't have a scroll bar; positions in a scroll bar are considered outside the window.
nil- The coordinates are not in any part of window.
The function coordinates-in-window-p does not require a frame as argument because it always uses the frame that window is on.