我正在 Fedora 23(使用 GNOME 3.18.2)上创建一个触摸屏项目,该项目需要一个全屏 Firefox(或 Chrome)窗口,用户无法使用触摸屏关闭该窗口。
然而,我们发现 GNOME 中有一个内置手势,当你从屏幕左边缘开始向右滑动时,它会打开“活动”菜单。即使我们的 Firefox 或 Chrome 窗口处于全屏/信息亭模式,也会发生这种情况。
互联网上有很多关于如何在 GNOME 中禁用多点触控手势的建议,但我还没有看到禁用左滑动手势的方法。
有没有办法在 Fedora 中做到这一点?
编辑:我的老板有一个相关问题,他要求将其添加到帖子中:
“我们尝试以“信息亭”模式运行 Firefox,但注意到 fedora gnome-shell 3.13.91 中有一个“功能”,允许用户从屏幕左侧进行边缘拖动并调出仪表板 - 使信息亭无效。
我相信此功能的代码位于 gnome-shell 代码中https://github.com/GNOME/gnome-shell在文件中/js/ui/edgeDragAction.js
——js/ui/viewSelector.js
但我可能完全错了。
我相信边缘拖动灵敏度已设置/js/ui/edgeDragAction.js
(参见下面的代码)
并将操作添加到js/ui/viewSelector.js
(参见下面的代码)
关闭此功能的最佳推荐方法是什么?编写我们自己的 Gnome 扩展?我们可以轻松覆盖这些方法或更改阈值吗?
例如:
const EDGE_THRESHOLD = 20; <- change to 0
const DRAG_DISTANCE = 80; <- change to 1000
编辑2:在 Florian Müllner 的帮助下,我们使用以下 Javascript 代码编写了一个 Gnome 扩展,它似乎解决了我们的问题:
/*
* Disable all of the touchscreen gestures.
*/
function enable() {
global.stage.get_actions().forEach(a => a.enabled = false);
}
/*
* Re-enable the touchscreen gestures.
*/
function disable() {
global.stage.get_actions().forEach(a => a.enabled = true);
}