联想触控板 libinput 捏合事件被吞噬?

联想触控板 libinput 捏合事件被吞噬?

我在联想 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.0evince 40.4。这些应用程序,AIUI,应该原生支持捏合控制以实现平滑缩放(例如,在 Firefox 83+ 的情况下,它应该控制不触发 DOM 重新渲染的简单缩放)。然而,它们似乎都没有产生任何效果。

我认为这可能是窗口管理器的问题,但在 Ubuntu 的原生 GNOME 中重现了相同的结果。

有什么办法可以继续调试吗?我不太熟悉输入设备/驱动程序/事物的整体抽象管道,因此,如果您能提供任何可以尝试的想法,我将不胜感激。

编辑:忘了提——值得注意的是“更奇怪”的输入,如水平滚动在 Firefox/evince 等应用程序中工作,它确实看起来有点吃力。

相关内容