input.focusChange event
绘图面的输入焦点布尔状态变化时发送。应用启动时所有绘图面均视为未聚焦。
Event payload
{
canvasId: string,
focused: boolean,
reason: "requested" | "user" | "system" | "hidden" | "destroyed" | "trusted-ui"
}
Examples
host.events.on('input.focusChange', ({ canvasId, focused }) => {
if (canvasId !== 'editor') return;
editor.setFocused(focused);
if (!focused) editor.closeTransientControls();
});
Delivery rules
- 同一绘图面只在
focused布尔值变化时发送,不能重复报告同一状态。 - 获得焦点事件排在该焦点下第一个 pointer/key/wheel 之前。
- 失焦时,活动 pointer 的
cancel先送达,本事件随后送达;本事件之后不得再交付该焦点下的输入。 reason: "requested"只用于input.focus()成功;可信宿主界面临时夺取焦点使用trusted-ui。- 事件不得合并或丢弃。
Requirements
- 事件声明:
input.focusChange - 来源:
passive;只报告本应用绘图面的焦点 - 信任档位:继承
input的 green