Beyond the Instant Click: Reconfiguring TrackPoint Button Behavior on Ubuntu
For ThinkPad enthusiasts and power users on Ubuntu, the TrackPoint is more than just a red nub; it’s a precision tool. However, a common frustration arises when the physical buttons—located above the touchpad—behave like "instant triggers" rather than standard mouse buttons. In many modern Ubuntu configurations (especially with 24.04 and 25.10), the middle button is often locked into a "Click to Scroll" mode, where a single tap pastes text from the clipboard or triggers a scroll lock instead of allowing you to hold the button down for dragging or complex CAD navigation. To fix this, we must dive into the libinput abstraction layer and the xinput utility to restore "Press-to-Hold" functionality.
Table of Content
- Purpose: Tactical Control vs. Automated Scrolling
- The Conflict: Middle Button Emulation vs. Scrolling
- Step-by-Step: Restoring Press Behavior
- Use Case: Professional 3D Modeling (CAD)
- Best Results: The Persistence Script
- FAQ
- Disclaimer
Purpose
Reconfiguring TrackPoint buttons from "clicks" to "presses" ensures the operating system respects the physical duration of your finger's contact with the button. This is essential for:
- Continuous Selection: Highlighting text without the system prematurely ending the "click" event.
- Middle-Button Panning: Holding the middle button to pan in applications like Blender, FreeCAD, or Google Earth.
- Accidental Paste Prevention: Disabling the instant "Middle Click Paste" that plagues Linux users when they only intended to start a scroll.
The Conflict: Middle Button Emulation vs. Scrolling
Ubuntu uses the libinput driver to handle TrackPoints. By default, it often enables Button Scrolling. This feature intercepts the middle button "press" and converts it into a "scroll mode" where the TrackPoint nub acts as a wheel. While useful, it effectively "hides" the button's raw state from the system. If you need the button to act as a sustained press (e.g., for a 'Button 2' event in code), you must decide if you want to keep scrolling functionality or prioritize raw button events.
Step-by-Step: Restoring Press Behavior
1. Identify Your TrackPoint Device ID
Open your terminal and list your input devices to find the specific name of your TrackPoint (it is usually something like "TPPS/2 IBM TrackPoint").
xinput list
Locate the numeric ID next to your TrackPoint device name. Let's assume the ID is 14 for the following steps.
2. Test the "Button Scrolling" Toggle
If your middle button is behaving like a toggle instead of a press, try disabling the property that intercepts the button for scrolling:
# Disable the property that captures the button for scrolling
xinput set-prop 14 "libinput Button Scrolling Button" 0
Note: This will likely stop the middle-click scroll feature from working. If you want BOTH, you may need to adjust the "Middle Emulation" property instead.
3. Enable Middle Button Emulation (The Press Fix)
If your physical middle button isn't being recognized as a press, enabling software emulation can sometimes force the kernel to recognize the physical state more accurately:
xinput set-prop 14 "libinput Middle Emulation Enabled" 1
4. Remapping the Button Map
If your buttons are registering the wrong actions (e.g., right-click acting as a middle-click), you can see the current map and rewrite it. The order is typically Left (1), Middle (2), Right (3).
# View current map
xinput get-button-map 14
# Set map (ensure 1 2 3 are in the correct positions for your hardware)
xinput set-button-map 14 1 2 3
Use Case: Professional 3D Modeling (CAD)
A mechanical engineer using a Lenovo ThinkPad on Ubuntu 25.10 finds that they cannot "Orbit" the camera in their CAD software because holding the middle button immediately triggers the Ubuntu "Middle Click Paste" or starts scrolling the page background.
- The Action: The engineer uses
xinputto disable "Button Scrolling Button" (setting it to 0). - The Result: The middle button now sends a sustained "Button 2" press event. They can now hold the button down while moving the TrackPoint to rotate 3D objects smoothly, without accidental text being pasted into their workspace.
Best Results: The Persistence Script
Because xinput settings are reset after every reboot or suspend-to-RAM event, you should save these commands into a startup script. Ubuntu's "Startup Applications" tool is the best place for this.
| Command Goal | Xinput Property | Suggested Value |
|---|---|---|
| Raw Press Logic | "libinput Button Scrolling Button" | 0 (Off) |
| Consistent Scrolling | "libinput Scroll Method Enabled" | 0, 0, 1 (Button Mode) |
| High Sensitivity | "libinput Accel Speed" | 0.5 to 1.0 |
FAQ
Why does my middle click still paste text?
In the X11/GNOME environment, the "Middle Click Paste" is a separate feature. You can disable it globally in GNOME Tweaks under "Keyboard & Mouse" -> "Middle Click Paste," which prevents the "click" event from interacting with the primary selection clipboard.
Can I have middle-button scrolling AND middle-button presses?
This is difficult on Linux. Usually, if the middle button is used as a modifier for scrolling, it cannot be used as a standard button simultaneously. However, you can remap a side button or an Alt-key combination to act as the scroll trigger instead.
What if I use Wayland instead of X11?
xinput only works on X11. For Wayland, you must use libinput-gestures or configure these settings via your Desktop Environment's native settings (e.g., gsettings or dconf-editor).
Disclaimer
Directly modifying input properties can temporarily disable your mouse or trackpoint. Always have an external mouse or a functional keyboard available to revert changes. These commands are verified for ThinkPad hardware using the libinput driver on Ubuntu 24.04/25.10. March 2026.
Tags: TrackPoint_Config, Ubuntu_Hardware, ThinkPad_Linux, Xinput_Guide