我在联想 82B500DBAU 上运行 Ubuntu 21.10 开发预览版,并安装 xmonad-wm。
它有一个MSFT0001:00 06CB:7F28
触摸板,大部分情况下似乎运行得很好(但值得注意的是,在 <= 21.04 的 Linux 内核中根本不受支持),它由 驱动libinput 1.18.1
。
双指滚动、双指右键单击、点击和 3/4 指手势(使用fusuma
)均可完美运行。观看 时libinput debug-gui
,一切似乎都运行正常,一次最多可检测 5 个手指,并进行垂直/水平滚动和捏合控制。
然而,我在应用程序中捏合控件时遇到了一些麻烦,我直觉地认为这与 libinput 事件在某处被吞没有关。
当观看时libinput debug-events
,我可以清楚地看到PINCH
当我在触控板上用两根手指捏合时触发的事件:
event7 GESTURE_PINCH_BEGIN +35.886s 2
event7 GESTURE_PINCH_UPDATE +35.886s 2 -0.40/-1.21 (-0.44/-1.32 unaccelerated) 1.03 @ -0.09
event7 GESTURE_PINCH_UPDATE +35.893s 2 0.00/-0.80 ( 0.00/-0.88 unaccelerated) 1.06 @ 0.13
event7 GESTURE_PINCH_UPDATE +35.901s 2 -0.44/-0.88 (-0.44/-0.88 unaccelerated) 1.09 @ -0.06
...
event7 GESTURE_PINCH_UPDATE +36.107s 2 0.88/ 2.20 ( 0.88/ 2.20 unaccelerated) 1.10 @ 0.53
event7 GESTURE_PINCH_UPDATE +36.114s 2 0.00/ 0.44 ( 0.00/ 0.44 unaccelerated) 1.10 @ 0.04
event7 GESTURE_PINCH_END +36.120s 2
而且,如果我设置fusuma
在触控板上有某种触发器,它会很乐意为我触发该功能。
我正在寻找支持平滑缩放的程序——值得注意的是,我一直在测试的程序是firefox 91.0
和evince 40.4
。这些应用程序,AIUI,应该原生支持捏合控制以实现平滑缩放(例如,在 Firefox 83+ 的情况下,它应该控制不触发 DOM 重新渲染的简单缩放)。然而,它们似乎都没有产生任何效果。
我认为这可能是窗口管理器的问题,但在 Ubuntu 的原生 GNOME 中重现了相同的结果。
有什么办法可以继续调试吗?我不太熟悉输入设备/驱动程序/事物的整体抽象管道,因此,如果您能提供任何可以尝试的想法,我将不胜感激。
编辑:忘了提——值得注意的是“更奇怪”的输入,如水平滚动做在 Firefox/evince 等应用程序中工作,它确实看起来有点吃力。