ipc: say what the want flag and the capability probe mean now

This commit is contained in:
2026-08-16 16:57:15 +09:00
parent 45c0290fd4
commit 8831b84ffc

7
ipc.h
View File

@@ -3,7 +3,8 @@
/* /*
* Key request: [flags, modifiers, key byte 0, ..., key byte 3]. * Key request: [flags, modifiers, key byte 0, ..., key byte 3].
* Flags request preedit and distinguish lifecycle reset from physical Escape. * The want flag asks for the preedit text: the client then draws it and
* the popup does not. The reset flag is a lifecycle reset, not Escape.
* The server identifies the connection as the engine owner; that identity is * The server identifies the connection as the engine owner; that identity is
* not sent on the wire. * not sent on the wire.
* Only Mmask modifier bits are retained. * Only Mmask modifier bits are retained.
@@ -13,7 +14,9 @@
* Lengths are little-endian byte counts; fields are at most Ipcfieldmax bytes, * Lengths are little-endian byte counts; fields are at most Ipcfieldmax bytes,
* so callers read them into char[Ipcfieldmax+1]. * so callers read them into char[Ipcfieldmax+1].
* *
* Capability control is six bytes: [0x80|want, version, 0, 0, 0, 0]. * Capability control is six bytes: [0x80|want, version, 0, 0, 0, 0]; the
* server always answers it eaten, which tells the client that extension
* frames are understood.
* Caret control is sixteen bytes: [0x80, version, 1, valid, x, y, h], * Caret control is sixteen bytes: [0x80, version, 1, valid, x, y, h],
* with the signed coordinates and height encoded as little-endian 32-bit words. * with the signed coordinates and height encoded as little-endian 32-bit words.
*/ */