生态桌面应用

事件系统

理解事件批次、命中测试、捕获、目标、冒泡与指针捕获。

言台先把系统事件规范化并批量送入言界。窗口级叠层栈先从最上层处理菜单/弹层命中、外部 点击与模态阻断;普通事件再在控件树依次执行三个阶段:

根 → 父容器 → 目标控件     捕获阶段
             目标控件      目标阶段
目标控件 → 父容器 → 根     冒泡阶段

使用捕获在事件到达目标前观察,使用监听处理目标和冒泡:

法 记录捕获(所事件) 则
    # 在容器捕获阶段执行
终

法 处理点击(所事件) 则
    # 目标按钮或冒泡阶段执行
终

容器.捕获(「指针按下」,记录捕获);
按钮.监听(「点击」,处理点击);

按钮的点击(回调)是常用语义事件快捷入口。输入框的变化时在正文提交变化后触发。窗口的关闭时和快捷分别处理关闭请求与标准化快捷键。

拖动分隔条或选区时,目标控件会请求指针捕获;即使指针离开原矩形,移动和释放仍发送给该控件。释放、取消、失焦或控件关闭都会清除捕获,避免“卡住按下”状态。

言台发出的无障碍焦点请求与无障碍动作请求不直接修改控件。窗口先同步当前语义变化, 再核对树修订、稳定控件编号、可见/启用状态和动作参数;有效请求才进入控件已有的点击、 设置值、选择、滚动或展开路径。过期或畸形请求不会降级成普通事件。

事件批次保留顺序,但会合并连续指针移动、窗口尺寸和重绘请求,并累积滚轮增量。未知可选 事件由兼容层忽略;未知主协议或损坏批次会返回统一错误。帧呈现是离散反馈,携带帧序号 和单调呈现时间,用来推进有界动画而不是表达业务计时。