如何在 Gnome(Fedora)上禁用关闭全屏触摸屏手势?

如何在 Gnome(Fedora)上禁用关闭全屏触摸屏手势?

我正在 Fedora 31(使用 Gnome 3)上构建一个触摸屏项目,该项目需要一个全屏 Unity3D 窗口,用户无法使用触摸屏关闭该窗口。

我可以使用几个 Gnome 扩展程序(Disable Gestures、Block Caribou)禁用大多数多点触摸手势。不幸的是,我不知道如何禁用(单指)从顶部向下拖动手势,该手势可退出任何应用程序的全屏模式(适用于 Firefox、Unity3D 等)。

切换桌面环境可以解决问题(KDE Plasma、Xfce),但其他环境对触摸屏的支持不如 Gnome 3。

有人知道如何在 Gnome 3 中禁用此手势吗?

答案1

这篇由 u/katastropal 发布的帖子指导如何禁用全屏退出手势. 鉴于禁用手势扩展安装后,需要更改文件 ~/.local/share/gnome-shell/extensions/ 中的以下部分[电子邮件保护]/extension.js 来自

function enable() {
    global.stage.get_actions().forEach(a => a.enabled = false);
}

function enable() {
    global.stage.get_actions().forEach(a => a.enabled = false);

    let disableUnfullscreenGesture = () => {
        global.stage.get_actions().forEach(a => { if (a != this) a.enabled = false;});
    }
    global.display.connect('notify::focus-window', disableUnfullscreenGesture);
    global.display.connect('in-fullscreen-changed', disableUnfullscreenGesture);
}

在 Ubuntu 20.04 上的 Gnome 版本 3.36.3 中测试成功。

相关内容