生态桌面应用
鼠标和指针
统一处理鼠标、触摸、触控笔、滚轮、手势与指针捕获。
言台把鼠标、触摸和触控笔统一为指针事件。公共事件包括进入、离开、移动、按下、释放、取消与滚轮;触摸和笔还可带指针编号、压力、高度角和阶段。坐标始终是窗口客户区逻辑像素。
法 按下(所事件) 则
# 所事件包含横坐标、纵坐标、按钮、来源和修饰键
终
画布.监听(「指针按下」,按下);命中测试从最上层可见、启用控件向下查找目标。拖动或选区开始后,控件可通过窗口的指针捕获保持接收移动和释放;释放、取消、失焦或控件关闭会自动清除捕获。
滚轮提供横向、纵向增量、单位和阶段。相邻滚轮事件会在一个批次内累积;指针移动只保留最新状态,离散按下/释放事件则从不丢失。滚动容器优先消费其可滚动方向,未消费部分可以继续冒泡给父滚动容器。
手势事件可表达缩放、旋转、平移和压力,但首版言界的常用控件主要消费指针与滚轮;自定义画布可监听原始手势构建缩放或旋转交互。