Bug 474118

Summary: User space Virtual tablet - pressure and tilt not working
Product: [Applications] krita Reporter: Cathal O'Grady <fierceinbattle>
Component: Tablets (tablet issues are only very rarely bugs in Krita!)Assignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED NOT A BUG    
Severity: wishlist CC: halla
Priority: NOR    
Version First Reported In: 5.1.5   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Cathal O'Grady 2023-09-03 21:39:19 UTC
I have project that uses evdev and its uinput component to create a virtual copy of my
Boox Note Air 2 (tablet with stylus digitizer). It just takes directly the kernel evedev 
config from the android device and creates a user space copy on my pc, then any events emitted are
just proxied through adb (Android debug bridge).

Anyway, this works on wayland and x11 and the pressure sensitivity and tilt its emitted properly when running 
evtest/libinput test. It also works on gimp.

STEPS TO REPRODUCE
1. Install my driver https://github.com/leath-dub/vboox
2. Run it when your Note Air 2 is connected

OBSERVED RESULT

Observe tilt and pressure sens not detected on krita (test tool + varies brushes)

EXPECTED RESULT

It should work as even libinput (not configured) can detect the tilt.

SOFTWARE/OS VERSIONS
Linux/bspwm (also tested kde and hyprland): 

ADDITIONAL INFORMATION

I am raising this kinda as I did superficial digging to see how you handle linux tablets,
but could find the code. Also not sure why the docs dont cover linux tablets at all.
I am wondering what you are using for fetching the device events. i know that this is not easily
reproduced on your guys end so I am mostly reaching out as a dev to see how I can
add support for my user space driver.
Comment 1 Halla Rempt 2023-09-04 07:39:47 UTC
Sorry, but like the category says, this isn't a bug in Krita. Krita doesn't have ANY code that directly interacts with tablets, it solely depends on the OS tablet drivers. If this (whatever it is) doesn't work, it simply means tablet events are not deliver to or propagated by Qt.