Bug 316837

Summary: add libwacom support
Product: [Plasma] wacomtablet Reporter: Jörg Ehrichs <Joerg.Ehrichs>
Component: generalAssignee: Jörg Ehrichs <Joerg.Ehrichs>
Status: RESOLVED FIXED    
Severity: task    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:

Description Jörg Ehrichs 2013-03-16 11:56:12 UTC
In order to remove our own tablet detection code/database the libwacom library should be used.

http://sourceforge.net/apps/mediawiki/linuxwacom/index.php?title=Libwacom

Beside the neat combination of the GNOME/KDE world and device database, the libwacom offers additional info (d ifferent supported styli ) which are not supported by our own database.
Comment 1 Valerii Malov 2018-04-15 18:00:23 UTC
Git commit ba954d21575bb74f2724bf582e66817f8d9391f4 by Valeriy Malov.
Committed on 15/04/2018 at 18:00.
Pushed by valeriymalov into branch 'master'.

Get button mapping from libwacom

Summary:
Grab evdev codes from libwacom and convert them into xsetwacom button
numbers
Requires libwacom 0.29
Add a crude "test" that compares local database data with libwacom data

This should make libwacom a suitable substitute for local database,
excluding status led info and button layout picture

Test Plan:
Hard to test this without pad buttons so a code review would suffice

I've slapped together a crude "test tool" that compares data pulled from libwacom and data pulled from local installed database
Mostly it seems to match, ignoring the button order (I don't think we care about button order, since button order can be subjective when user is filling it out using tablet finder)
Where it doesn't match it probably needs to be checked individually via google or feedback from device owner
Here's the output for the test tool if anyone's curious: https://paste.kde.org/p1cfyhxrl

Reviewers: fvogt

Differential Revision: https://phabricator.kde.org/D12075

M  +5    -0    CMakeLists.txt
M  +1    -0    autotests/CMakeLists.txt
A  +8    -0    autotests/common/libwacomdata/CMakeLists.txt
A  +142  -0    autotests/common/libwacomdata/testlibwacomdata.cpp     [License: GPL (v2+)]
M  +7    -5    cmake/modules/FindLibWacom.cmake
M  +92   -5    src/common/libwacomwrapper.cpp

https://commits.kde.org/wacomtablet/ba954d21575bb74f2724bf582e66817f8d9391f4