summaryrefslogtreecommitdiff
path: root/tools/testing/selftests/hid
diff options
context:
space:
mode:
authorBenjamin Tissoires <bentiss@kernel.org>2024-04-10 20:19:34 +0300
committerBenjamin Tissoires <bentiss@kernel.org>2024-05-07 16:39:39 +0300
commit1b2c3caf7839adff892d8397995803d93e347974 (patch)
tree0315b020072bf9ac1fd316e1da436e05093cfed7 /tools/testing/selftests/hid
parent03899011df4b2bb0f9b3ac57b1044b161a336f31 (diff)
downloadlinux-1b2c3caf7839adff892d8397995803d93e347974.tar.xz
selftests/hid: tablets: also check for XP-Pen offset correction
The values are taken from the HID-BPF file. Basically we are recomputing the array provided there. Link: https://lore.kernel.org/r/20240410-bpf_sources-v1-14-a8bf16033ef8@kernel.org Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
Diffstat (limited to 'tools/testing/selftests/hid')
-rw-r--r--tools/testing/selftests/hid/tests/test_tablet.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/tools/testing/selftests/hid/tests/test_tablet.py b/tools/testing/selftests/hid/tests/test_tablet.py
index e265f1d4e089..ae0eda9cd3d8 100644
--- a/tools/testing/selftests/hid/tests/test_tablet.py
+++ b/tools/testing/selftests/hid/tests/test_tablet.py
@@ -957,10 +957,24 @@ class XPPen_ArtistPro16Gen2_28bd_095b(PenDigitizer):
pen.eraser = False
pen.barrelswitch = False
- pen.xtilt = 0
- pen.ytilt = 0
pen.current_state = state
+ def event(self, pen, test_button):
+ import math
+
+ pen_copy = copy.copy(pen)
+ width = 13.567
+ height = 8.480
+ tip_height = 0.055677699
+ hx = tip_height * (32767 / width)
+ hy = tip_height * (32767 / height)
+ if pen_copy.xtilt != 0:
+ pen_copy.x += round(hx * math.sin(math.radians(pen_copy.xtilt)))
+ if pen_copy.ytilt != 0:
+ pen_copy.y += round(hy * math.sin(math.radians(pen_copy.ytilt)))
+
+ return super().event(pen_copy, test_button)
+
class XPPen_Artist24_28bd_093a(PenDigitizer):
"""