0

I am trying use a tablet as my primary pointing device instead of a mouse (to get comfortable with it). It works but scrolling has become very inconvenient. See, a mouse has a scroll wheel that I can use to scroll. But on the tablet, I have always drag the scroll bar. And some apps, also hide the scroll bar until a scroll is made. Here is what I want to do.

My pen/stylus has a button that simulates a middle click. I can copy-paste with that button. I can open and close browser tabs with that button. It is a drop-in replacement for middle-click. On Windows, if you hold that middle button and move the mouse up or down, it simulates scrolling. I want to do that. Currently, only one application behaves that way, Zathura PDF Viewer. I want that behavior in all my applications. I looked around and I found this link:

https://unix.stackexchange.com/a/421672

It says that I have to set the two following properties:

xinput set-prop 11 "libinput Scroll Method Enabled" 0, 0, 1  # This is button
xinput set-prop 11 "libinput Button Scrolling Button" 2      # This is mi

But those commands give me the following error.

property 'libinput Scroll Method Enabled Default' doesn't exist, you need to specify its type and format

I have the following devices

$  xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ HID 256c:006e Pad                         id=14   [slave  pointer  (2)]
⎜   ↳ HID 256c:006e Pen Pen (0)                 id=20   [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)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]
    ↳ HID 256c:006e Pen                         id=13   [slave  keyboard (3)]
    ↳ NOVATEK USB NETVISTA FULL WIDTH KEYBOARD  id=15   [slave  keyboard (3)]
    ↳ NOVATEK USB NETVISTA FULL WIDTH KEYBOARD Consumer Controlid=16    [slave  keyboard (3)]
    ↳ NOVATEK USB NETVISTA FULL WIDTH KEYBOARD System Control   id=17   [slave  keyboard (3)]
    ↳ Eee PC WMI hotkeys                        id=18   [slave  keyboard (3)]

And, true, neither of the tablet (Pad or Pen) devices have the libinput Scroll Method Enabled property.

$ xinput list-props 14; xinput list-props 20;
Device 'HID 256c:006e Pad':
    Device Enabled (156):   1
    Coordinate Transformation Matrix (158):1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Left Handed Enabled (306): 0
    libinput Left Handed Enabled Default (307): 0
    libinput Send Events Modes Available (275): 1, 0
    libinput Send Events Mode Enabled (276):    0, 0
    libinput Send Events Mode Enabled Default (277):    0, 0
    Device Node (278):  "/dev/input/event12"
    Device Product ID (279):    9580, 110
Device 'HID 256c:006e Pen Pen (0)':
    Device Enabled (156):   1
    Coordinate Transformation Matrix (158):1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Send Events Modes Available (275): 1, 0
    libinput Send Events Mode Enabled (276):    0, 0
    libinput Send Events Mode Enabled Default (277):    0, 0
    Device Node (278):  "/dev/input/event11"
    Device Product ID (279):    9580, 110
    libinput Tablet Tool Pressurecurve (502):   0.000000, 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000, 1.000000

So, with that property not existing, is there any other way in which I can simulate the scrolling by holding 'middle-mouse' and moving the pointer? There is a firefox specific setting called 'Auto Scrolling', but I don't want that. I want a OS specific setting where I can scroll in any application, for example, in my file manager Caja.

sigsegv
  • 149
  • The "middle-button scroll" you refer to is AFAIK a feature of an app. Usually, while working with a mouse, I think it would be an unwanted behavior because it would break ability to paste selected text without pressing Ctrl+C (so called "primary clipboard"). Anyway, I find it odd libinput docs on tablet don't mention scrolling, and ones on scrolling don't mention tablets. I also see nothing relevant in issues list. So, might be worth creating a report at least for the sake of docs. – Hi-Angel Feb 08 '21 at 09:37
  • (or maybe it wouldn't break… I'm not sure how it would behave on widgets that are both "scrollable" and "pasteable". Anyway, that just an aside thought) – Hi-Angel Feb 08 '21 at 09:47

0 Answers0