feat(ipc): add 'get cursorpos' and 'get option <name>' queries

This commit is contained in:
Ernesto Cruz 2026-06-20 00:23:54 +01:00
parent 8e356692f6
commit fa4f144b9d
5 changed files with 276 additions and 0 deletions

View file

@ -21,6 +21,17 @@ All \fBget\fR commands print a single JSON object and then close the connection.
\fBget version\fR
Return compositor version.
.TP
\fBget cursorpos\fR
Return the global pointer position (\fBx\fR, \fBy\fR) and the monitor under it
(\fBnull\fR if over no output).
.TP
\fBget option \fIname\fR
Return the current value of a scalar config option. Numbers are returned as
numbers, colors as \fB0xRRGGBBAA\fR strings, bezier curves as 4-element arrays.
Values round-trip through \fBdispatch setoption,\fIname\fB,\fIvalue\fR, except
the comma-list options \fBcircle_layout\fR and \fBscroller_proportion_preset\fR
(readable as arrays, but written via the config file).
.TP
\fBget keymode\fR
Return current keymode.
.TP

View file

@ -12,6 +12,10 @@ static void usage(void) {
printf("One-shot queries (get):\n");
printf(
" get version Show compositor version\n");
printf(" get cursorpos Show pointer position + "
"monitor\n");
printf(" get option <name> Show current value of a "
"config option\n");
printf(" get keymode Show current keymode\n");
printf(" get keyboardlayout Show current keyboard "
"layout\n");