Как отключить жесты сенсорного экрана в Fedora / GNOME?

1440
kepler_kingsnake

Я создаю проект с сенсорным экраном в Fedora 23 (с использованием GNOME 3.18.2), для которого требуется полноэкранное окно Firefox (или Chrome), которое пользователь не может закрыть с помощью сенсорного экрана.

Однако мы поняли, что в составе GNOME есть встроенный жест, который открывает меню «Активности», когда вы проводите пальцем вправо, начиная с левого края экрана. Это даже происходит, когда наше окно Firefox или Chrome работает в полноэкранном режиме или в режиме киоска.

В Интернете было много предложений о том, как отключить жесты с несколькими касаниями в GNOME, но я не видел способа отключить жест смахивания влево.

Есть ли способ сделать это в Fedora?

РЕДАКТИРОВАТЬ: У моего босса есть связанный вопрос, который он попросил добавить в пост:

«Мы пытаемся запустить Firefox в режиме« киоска », но заметили, что в fedora gnome-shell 3.13.91 есть« особенность », которая позволяет пользователям перетаскивать края с левой стороны экрана и выводить тире. аннулирование киоска.

Я полагаю, что код для этой функции находится в коде оболочки gnome 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: С помощью Флориана Мюллнера мы написали расширение Gnome со следующим кодом Javascript, и оно, похоже, решило нашу проблему:

/* * 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); } 
1
Попробуйте другой оконный менеджер, который также будет потреблять меньше ресурсов (что не имеет значения при работе Firefox или Chrome) Martian 8 лет назад 0
Чтобы сделать это, я бы установил что-то вроде gnome-classic-session или у него был тот же оконный менеджер, что и в Gnome 3? kepler_kingsnake 8 лет назад 0
`dnf search" window manager "` выведет список доступных пакетов. Попробуйте, какой из них работает лучше для вас. Например X-песочницы selinux используют metacity WM. Martian 8 лет назад 0

0 ответов на вопрос