ime.characterBoundsRequest event
系统输入法需要定位候选窗口或辅助 UI 时,请求当前 revision 中有限范围的字符矩形。
Event payload
{ handle, revision: u64, range: { start: u32, end: u32 } }
Examples
host.events.on('ime.characterBoundsRequest', async ({ revision, range }) => {
if (revision !== editor.revision) return;
await host.ime.updateGeometry(session, {
revision,
characterBounds: layout.boundsFor(range),
});
});
Delivery rules
宿主限制请求范围和速率。guest 可以只返回已布局部分,但必须明确覆盖范围,不能伪造缺失字符的坐标。