我注意到触摸屏在 Ubuntu 16 台式机(触摸屏笔记本电脑)上的 FireFox 中不起作用,这真是令人沮丧,因为我是 FireFox 爱好者,浏览器占了我个人电脑的 90%。请注意,它在非 Linux FireFox 上有效,在 Ubuntu 上的 Chrome/Chromium 上有效。
我对此进行了一些研究,发现很多人在 2 - 3 年前也有同样的抱怨。在那些情况下,共识通常是 FireFox 缺少一些必要的技术来支持这一点(有人说是 GTK 3,其他人说了别的)。然而他们声称这个问题已经在预发布的 FF v50 中得到修复。现在 FF 50 已经发布,我正在运行它,但它仍然不起作用。
我可以添加一些东西吗,可以使用 Alpha / Beta / Dev / Nightly 版本,或者我可以对 Ubuntu 本身做些什么来使其工作?
答案1
这对我有用(firefox 57.0.4,Arch Linux):
在 Firefox 中打开
about:config
进行设置dom.w3c_touch_events.enabled=1
(默认为 2)。编辑
/etc/security/pam_env.conf
和添加MOZ_USE_XINPUT2 DEFAULT=1
重启并重新启动 Firefox
(也可以看看如何让 Firefox 识别触摸屏上的多点触控手势?)
答案2
在其他地方找到了这个解决方案:如果我从命令行启动 Firefox
env MOZ_USE_XINPUT2=1 firefox
然后触摸屏滚动对我来说就起作用了。为了避免必须从命令行启动 Firefox,您可以编辑 Unity 应用启动器执行代码以包含此代码。默认.desktop
位于,/usr/share/applications
但我们会将其复制到我们的主文件夹中,这样我们所做的更改就不会被包管理器在更新时覆盖。
cp /usr/share/applications/firefox.desktop ~/.local/share/applications/
gedit ~/.local/share/applications/firefox.desktop
Exec
在该部分中找到该行[Desktop Entry]
并将其更改为
Exec=env MOZ_USE_XINPUT2=1 firefox %u
如果您愿意,也可以更改其他执行行。这些会影响右键菜单中的选项。
编辑:
在某个时候,它停止工作了(我想是因为我安装了扩展程序)。为了修复它,我必须进入about:config
浏览器,右键单击,添加一个browser.tabs.remote.force-enable
设置为 true 的新布尔值。警告:不建议这样做,可能会破坏某些东西。
添加 Jeff G 的评论,您可能还需要转到about:config
并设置dom.w3c_touch_events.enabled = 1
。
答案3
我找到了一个名为抓取并拖动它将此功能添加到 FireFox。
答案4
又发现了一个 Firefox 插件可以让你实现这个功能。希望这个插件能比另外两个插件持续更长时间。
添加后,您必须转到“选项”>“常规”并选中“左键”框。我在 Ubuntu 18.04 LTS 和 Firefox 78.0.1(64 位)上可以使用