How can I rotate and pan the viewport with a (thinkpad) pointing stick in blender 2.8? If I press the middle mouse button and move the pointing stick up or down it only zooms in and out.
On Linux, by default, holding down the middle button and then tilting the TrackPoint generates scrollwheel events. TrackPoint enthusiasts typically use this to scroll through Web pages/documents. However, Blender will interpret this as a zoom command. This behavior can be disabled, but not all desktop environments have a control for it (e.g. Xfce4 doesn't), and the command line incantation is a bit obtuse.
The following was tested on a Debian Sid system; you must have the package
xinput installed. If you have an older version of Linux, the incantation may need to be different, as the support framework has changed in the last two or three years. First check to see which is your TrackPoint device using
xinput list. You will see output something like this:
⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ Synaptics TM3072-003 id=12 [slave pointer (2)] ⎜ ↳ TPPS/2 IBM TrackPoint id=13 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ Power Button id=6 [slave keyboard (3)] ↳ Video Bus id=7 [slave keyboard (3)] ↳ Sleep Button id=8 [slave keyboard (3)] ↳ Integrated Camera: Integrated C id=9 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)] ↳ ThinkPad Extra Buttons id=11 [slave keyboard (3)]
It's the TrackPoint device whose properties we want to change. We can specify it either by ID number or, as below, by name:
xinput --set-prop 'TPPS/2 IBM TrackPoint' "libinput Scroll Method Enabled" 0 0 0
This disables button-based scrolling on the TrackPoint. Holding the middle button down while tilting the TrackPoint will now rotate the view. Root privileges are not required. This setting does not persist and must be reset on each login/reboot.
For more information see this Web page, and also
man 4 libinput to find out what the arguments mean.