1
0
Fork 0
mirror of https://github.com/tuxedocomputers/tuxedo-touchpad-switch.git synced 2025-01-18 11:41:10 +01:00
Linux userspace driver to enable and disable the touchpads on TongFang/Uniwill laptops using a HID command.
Find a file
2024-05-29 17:06:58 +02:00
debian Update changelog for 1.0.8 release 2024-05-29 17:06:58 +02:00
res Updated 99-tuxedo-touchpad-switch.rules 2021-09-07 07:33:00 +02:00
.gitignore Add debian package files 2021-02-01 19:43:11 +01:00
CMakeLists.txt Fix build and runtime dependencies 2023-04-14 17:42:32 +02:00
LICENSE.txt Cleanup 2020-12-22 12:07:53 +01:00
ReadMe.md Remove legacy packageing command because it breaks debuild on buildserver 2023-04-14 17:41:53 +02:00
setup-gnome.cpp Fix uncritical memory leak on exit 2022-03-04 12:36:01 +01:00
setup-gnome.h Fix double unlock bug and some memory leaks 2021-01-29 18:40:14 +01:00
setup-kde.cpp Add Plasma 6 support 2024-05-16 10:07:00 +02:00
setup-kde.h Fix double unlock bug and some memory leaks 2021-01-29 18:40:14 +01:00
touchpad-control.cpp Add Plasma 6 support 2024-05-16 10:07:00 +02:00
touchpad-control.h Merge GNOME and KDE logic and decide in programm what to run 2021-01-27 16:37:17 +01:00
tuxedo-touchpad-switch.cpp Add gracefull exit on previously unhandled error cases 2022-03-04 12:31:23 +01:00

About

This a Linux userspace driver to enable and disable the touchpads on TongFang/Uniwill laptops using a HID command. This will trigger the touchpad-disabled-LED, formerly unfunctional under linux.

Most desktop environments already have a way to disable the touchpad, but this setting never reaches the firmware of the device. This driver listens to the session D-Bus and dispatches the approprita HID call to /dev/hidraw* whenever the setting changes, closing the gap to the device itself, and enabling the built in LED.

Currently this driver was only tested and works on the GDM greeter, GNOME Shell, Budgie, and KDE Plasmashell. All other environments, including the tty-console, work as before, meaning touchpad is always enabled on the HID level.

Author: Werner Sembach tux@tuxedocomputers.com

Building

Testing

$ sudo apt install libudev-dev libglib2.0-dev
$ mkdir build
$ cd build
$ cmake ..
$ sudo make install
$ sudo reboot

Packaging

$ sudo apt install libudev-dev libglib2.0-dev git-buildpackage debhelper
$ rm -r build
$ gbp buildpackage -uc -us

A .deb package is created in the folder above the git repository.

Installing

After installing via make install or using the .deb you need to reboot your system for the driver to load.