C6.14.3Gesture suppression during caret nudging设计研究
微调期间需抑制其他手势
别名: 插入符手势冲突 · 拖动锁定 · 抑制滚动
概念解释
插入符拖动、手柄拖动和空格滑动一旦开始,同一根手指的后续位移必须继续服务于这件事。滚动、返回手势、键盘收起、系统边缘手势若在中途插入,微调被打断,选区或插入符会停在半路,甚至整页被划走。微调期间要抑制那些会抢同一条触点流的手势。
机制
触点流在系统里被多个识别器并行看着:滚动要速度与方向,返回要边缘起点,键盘收起可能看向下滑,插入符拖动要水平位移。没有独占时,位移稍偏竖直就会达到滚动阈值,页面带走目标缝,放大镜对空。空格滑动更脆弱:空格本是按键,识别器要在“还是一次空格点击”和“已经是触控板”之间做阈值,阈值期间若另一次手势(双指、边缘)被满足,模式会跳走。抑制不是永久关掉那些手势,而是在“已确认进入微调”到“触点抬起”这段窗口里,把触点交给微调识别器。窗口之外它们照常工作。失败形态很具体:拖到一半页面跳了、键盘收起了、或系统返回把编辑页关掉。
怎么研究
在微调中途人为加入易混淆的位移(略竖直、靠近边缘、经过空格)。记录哪一个识别器赢,以及任务是否被中断。自变量包括滚动阈值、边缘保护区、空格滑动的启动距离;因变量包括误触发滚动/返回/收起的次数、完成微调的比例。只让人在屏幕中央水平拖,会把冲突藏住。
边界
需要边看边滚的长文档,完全锁死滚动会让目标缝滚出视口;正确的是:单指继续微调,双指或滚动手势另开一条通道。辅助技术的系统手势有时必须能打断,不能被应用吞掉。鼠标拖选用的是按钮状态而不是手势识别器,抑制集合不同。
怎么落地
- 在插入符或手柄拖动开始后,直到抬起之前不要把同一触点判给滚动、边缘返回或收起键盘。
- 为空格滑动设明确的启动距离,启动之后同样独占;启动之前的轻点仍是空格。
- 从屏幕下缘和文本区中部分别拖一次插入符;若其中一次变成了系统返回或列表滚动,抑制窗口就还没盖住那条路径。