Trying to build a kiosk on top of Gnome 3.36, stuck with unwanted touchscreen gesture "features"
I'm building a kiosk system based on the Chromium browser in kiosk mode on Ubuntu 204 LTS with Gnome 3.36.9. I got it mostly working, but its still possible to break it using some gestures on a tochscreen.
I've tried every suggestion found on the internet, including installing a few Gnome extensions. The extensions I've tried include (sometimes with updated shell version in metadata.json):
- Disable Gestures (updated shell version). This one does block 3-finger gestures
- Disable Touch OSK
- Block Caribou (updated shell version)
- Just Perfection seems to be working in interactive mode on the full desktop, but it breaks Gnome on the actual kiosk, so that one is unusable.
I've also added a hack to one of the that is supposed to prevent demaximizing windows. It seems to have some effect, but it doesn't actually prevent it completely.
The gestures I can't get rid of are:
- dragging from the top edge down, it's possible to pull a maximized window out of maximized mode into a plain window
- dragging from the bottom edge up, you can make an onscreen keyboard appear, even if there's no input field tp type into.
What else can I try? I thought about capturing an event when one of the above things happens, and either block it, restore the state, or simply restart the kiosk. I'm not sure on how to tackle this. (The main aim is that the kiosk doesn't stay in a faulty state.)
Thank you for any useful suggestions.
Posted Dec 28, 2021, 8:54 AM UTC · edited
I feel like using xfce or a window manager would make more sense for what it sounds like your doing if its just chromium browser in kiosk use a more simple desktop.
I've tried XFCE and it does solve the immediate problem: as an older system, it doesn't support multifinger and swipe-from-edge gestures that are impossible to get rid of in Gnome.
The nice thing is that it's easy to remove the top bar and the "favorites" panel at the bottom, simply by stopping xfce4-panel (by executing
xfce4-panel -q).It does have its own problems, though, such as a mousepointer that is hard to get rid of, even when using just a touch screen (Gnome handles that properly by itself), and screensaver/screen lock/hibernate that kicks in after about 10 minutes, and for which the configured settings don't stick through a reboot.
Also: the name of the group of properties for display settings, such as screen rotation, as the screen is used in portrait mode, depend on the screen hardware, so it's very hard to setup using the command line on a pristine system as these properties do not exist yet until you use display settings panel at least once.
I would reccomend to use a window manager then.
Can you explain? (Or point to a page with info on exactly what you mean.)
There is a window manager in XFCE, and it is running.
You can use a window manager on its own and for a kiosk its likely the most suitable option. Openbox would probably be a good starting option i3 and sway are also quite good.