From d65fcf286d9caf86d6041f7184b4fd1c2143688b Mon Sep 17 00:00:00 2001 From: BeeFox-sys <42090331+BeeFox-sys@users.noreply.github.com> Date: Fri, 12 Dec 2025 12:44:22 +1100 Subject: [PATCH] Launcher: Add workaround for kivy bug for linux touchpad devices (#5737) * add code to fix touchpad on linux, courtesy of Snu of the kivy community * Launcher: Update workaround to follow styleguide --- kvui.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/kvui.py b/kvui.py index 403872d63b..b0091b5a20 100644 --- a/kvui.py +++ b/kvui.py @@ -35,6 +35,17 @@ Config.set("input", "mouse", "mouse,disable_multitouch") Config.set("kivy", "exit_on_escape", "0") Config.set("graphics", "multisamples", "0") # multisamples crash old intel drivers +# Workaround for Kivy issue #9226. +# caused by kivy by default using probesysfs, +# which assumes all multi touch deviecs are touch screens. +# workaround provided by Snu of the kivy commmunity c: +from kivy.utils import platform +if platform == "linux": + options = Config.options("input") + for option in options: + if Config.get("input", option) == "probesysfs": + Config.remove_option("input", option) + # Workaround for an issue where importing kivy.core.window before loading sounds # will hang the whole application on Linux once the first sound is loaded. # kivymd imports kivy.core.window, so we have to do this before the first kivymd import.