Linux
/MNT_Node Virtual Trackpad For KDE Plasma
A KDE Plasma //MNT_Node virtual trackpad for touch screen users, similar in functionality to the windows utility
/Repository
/Overview
/Architecture
Features
- Real Cursor Control - Uses uinput for actual system cursor movement on Wayland
- Touch-Sensitive Trackpad - Smooth cursor control via touch input
- Mouse Click Buttons - Left, Middle, and Right mouse click functionality
- Always on Top - Stays above all applications using KWin rules
- Focus-Friendly - Doesn't steal focus from other applications
- Draggable Window - Repositionable via title bar
- Wayland Compatible - Works perfectly on KDE Plasma Wayland
Requirements
- KDE Plasma 6.0 or later
- Qt6 (Core, Gui, Qml, Quick)
- Linux kernel with uinput support
- User permissions for uinput device access
Usage
-
From Application Menu:
- Search for "Virtual Trackpad" in your application launcher
- Launches with terminal window (required for proper environment)
-
From Terminal:
cd ~/Virtual_Trackpad_for_KDE_Plasma/working_build ./VirtualTrackpad
-
Basic Controls:
- Drag in the touch area to move your cursor
- Click L, M, R buttons for mouse clicks
- Drag the title bar to reposition the window
-
Window Management:
- Right-click on the window
- Select "More Actions" > "Keep Above Others" for persistent behavior
-
Features:
- Optimized cursor sensitivity (30% of original)
- Stays above all applications automatically
- Doesn't steal focus from other windows
- Works perfectly on Wayland
To completely remove the Virtual Trackpad:
cd ~/Virtual_Trackpad_for_KDE_Plasma
./remove_virtual_trackpad.shThis will remove:
- Desktop entry from application menu
- KWin rules
- All project files and directories
The cursor sensitivity can be adjusted in the source code by modifying the m_sensitivity value in uinput_cursor_controller.cpp.
The setup script automatically configures KWin rules for:
- Forced "Keep Above" behavior
- Focus stealing prevention
- Automatic application on startup
To remove the rules:
./remove_kwin_rules.sh/Stack
- QML
- C++
- Shell
- CMake