我最近在一台用于测试的联想 ThinkPad L13 Yoga Gen 2 上安装了 Ubuntu 20.04。我自然想知道 Ubuntu 在触摸屏兼容性方面取得了多大的进展。不过,到目前为止,我的体验相当令人担忧,因为最基本的东西似乎在大多数应用程序中都不起作用[1]:
- 我无法使用双指捏合手势放大文本(例如在 Firefox 或 LibreOffice 中)
- 我无法仅使用一根手指向下滚动页面;如果我这样做,它只会选择我手指移过的文本。(例如在 Firefox、LibreOffice、Thunderbird 中)
- 我无法通过长按选定文本或文件来调出上下文菜单。(LibreOffice、Nemo、Firefox、Thunderbird)
我错过了什么?Ubuntu 真的有这些高度复杂的四指手势,但甚至不支持最基本的触摸屏功能?我是否缺少驱动程序或任何其他软件包?
//编辑:我发现了一个类似问题触摸屏支持,但它只询问 Mozilla Firefox,而且已经有五年的历史了(这意味着它可能包含过时的建议)。无论如何:真的没有办法在系统范围内设置默认触摸屏行为,而不是在每个应用程序的基础上设置吗?
这是我的 inxi -Fxz 输出,希望它有帮助。
System:
Kernel: 5.8.0-50-generic x86_64 bits: 64 compiler: N/A
Desktop: Gnome 3.36.7 Distro: Ubuntu 20.04.2 LTS (Focal Fossa)
Machine:
Type: Convertible System: LENOVO product: 20VK000VGE
v: ThinkPad L13 Yoga Gen 2 serial: <filter>
Mobo: LENOVO model: 20VK000VGE v: SDK0J40697 WIN serial: <filter>
UEFI: LENOVO v: R1FET29W (1.03 ) date: 10/08/2020
Battery:
ID-1: BAT0 charge: 18.4 Wh condition: 46.0/46.0 Wh (100%)
model: Celxpert 5B10W13934 status: Discharging
CPU:
Topology: Quad Core model: 11th Gen Intel Core i5-1135G7 bits: 64
type: MT MCP arch: Tiger Lake rev: 1 L2 cache: 8192 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
bogomips: 38707
Speed: 800 MHz min/max: 400/800 MHz Core speeds (MHz): 1: 800 2: 800
3: 800 4: 800 5: 800 6: 801 7: 801 8: 800
Graphics:
Device-1: Intel vendor: Lenovo driver: i915 v: kernel bus ID: 00:02.0
Display: x11 server: X.Org 1.20.9 driver: i915 resolution: 1920x1080~60Hz
OpenGL: renderer: Mesa Intel Xe Graphics (TGL GT2) v: 4.6 Mesa 20.2.6
direct render: Yes
Audio:
Device-1: Intel vendor: Lenovo driver: snd_hda_intel v: kernel
bus ID: 00:1f.3
Sound Server: ALSA v: k5.8.0-50-generic
Network:
Device-1: Intel driver: iwlwifi v: kernel port: 3000 bus ID: 00:14.3
IF: wlp0s20f3 state: up mac: <filter>
Device-2: Intel Ethernet I219-V vendor: Lenovo driver: e1000e v: 3.2.6-k
port: efa0 bus ID: 00:1f.6
IF: enp0s31f6 state: down mac: <filter>
Drives:
Local Storage: total: 238.47 GiB used: 23.36 GiB (9.8%)
ID-1: /dev/nvme0n1 vendor: Western Digital
model: PC SN730 SDBQNTY-256G-1001 size: 238.47 GiB
Partition:
ID-1: / size: 231.54 GiB used: 23.15 GiB (10.0%) fs: ext4 dev: /dev/dm-1
ID-2: /boot size: 704.5 MiB used: 209.7 MiB (29.8%) fs: ext4
dev: /dev/nvme0n1p2
ID-3: swap-1 size: 976.0 MiB used: 0 KiB (0.0%) fs: swap dev: /dev/dm-2
Sensors:
System Temperatures: cpu: 44.0 C mobo: 1.0 C
Fan Speeds (RPM): cpu: 0
Info:
Processes: 285 Uptime: 1h 10m Memory: 7.45 GiB used: 2.69 GiB (36.1%)
Init: systemd runlevel: 5 Compilers: gcc: N/A Shell: bash v: 5.0.17
inxi: 3.0.38
[1] 我注意到,出于我无法解释的原因,双指捏合缩放和单指滚动做在帮助文件中工作。
答案1
因此,事实证明,对于每个未在出厂时启用触摸手势的应用程序,您确实必须启用该功能。Firefox 似乎已禁用触摸手势,因为据说该功能存在缺陷。不过,我没有发现任何缺陷。您可以通过向 .bashrc 添加环境变量来启用它。如果其他人想知道如何做到这一点(包括我这个健忘的未来自己),这里有一个快速终端命令,应该可以在 Firefox 中为您运行它:
echo "export MOZ_USE_XINPUT2=1" >> ~/.bashrc
source ~/.bashrc
至于 LibreOffice 和 Thunderbird,我还没有找到在这些应用程序中运行触摸手势的环境变量的名称(如果有的话)。如果有人能在这方面提供帮助,我将不胜感激。