01 · 滚动平滑
一格滚轮,拆成一段
滚轮的一格不再是一次跳变。事件先攒起来,再在每次屏幕刷新时投递,每帧投出 pending × (1 − e^(−dt/τ))。衰减由经过的时间驱动、而不是帧数,所以响应形状由时间决定,与刷新率无关;总量守恒在 60、120、144 Hz 下都测过。离线基准里,120 Hz 的首帧从 3 点提升到 9 点,90% 用时从 150 ms 降到 133 ms。
把滚轮当精确输入或缩放控件的窗口——终端、看图、幻灯片——默认交回系统。按住 ⌘ 随时回到原生滚动。平滑默认关闭:你不打开,它就不会接管滚轮。界面上留着四个实时计数——看到、手势、拦截、投递——换了新鼠标出问题,能看清是哪一层丢了事件。