Lines Matching +full:3 +full:- +full:d

2 # SPDX-License-Identifier: GPL-2.0
3 # -*- coding: utf-8 -*-
44 https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
67 def from_evdev(cls, evdev, test_button) -> "PenState":
100 ) -> "PenState":
147 def valid_transitions(self) -> Tuple["PenState", ...]:
207 def historically_tolerated_transitions(self) -> Tuple["PenState", ...]:
209 for skipping the in-range state, due to historical reasons.
272 def legal_transitions() -> Dict[str, Tuple["PenState", ...]]:
274 we don't have Invert nor Erase bits, so just move in/out-of-range or proximity.
275 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
278 "in-range": (PenState.PEN_IS_IN_RANGE,),
279 "in-range -> out-of-range": (
283 "in-range -> touch": (PenState.PEN_IS_IN_RANGE, PenState.PEN_IS_IN_CONTACT),
284 "in-range -> touch -> release": (
289 "in-range -> touch -> release -> out-of-range": (
298 def legal_transitions_with_invert() -> Dict[str, Tuple["PenState", ...]]:
302 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
305 "hover-erasing": (PenState.PEN_IS_IN_RANGE_WITH_ERASING_INTENT,),
306 "hover-erasing -> out-of-range": (
310 "hover-erasing -> erase": (
314 "hover-erasing -> erase -> release": (
319 "hover-erasing -> erase -> release -> out-of-range": (
325 "hover-erasing -> in-range": (
329 "in-range -> hover-erasing": (
336 def legal_transitions_with_button() -> Dict[str, Tuple["PenState", ...]]:
341 "hover-button": (PenState.PEN_IS_IN_RANGE_WITH_BUTTON,),
342 "hover-button -> out-of-range": (
346 "in-range -> button-press": (
350 "in-range -> button-press -> button-release": (
355 "in-range -> touch -> button-press -> button-release": (
361 "in-range -> touch -> button-press -> release -> button-release": (
368 "in-range -> button-press -> touch -> release -> button-release": (
375 "in-range -> button-press -> touch -> button-release -> release": (
385 def tolerated_transitions() -> Dict[str, Tuple["PenState", ...]]:
390 "direct-in-contact": (PenState.PEN_IS_IN_CONTACT,),
391 "direct-in-contact -> out-of-range": (
398 def tolerated_transitions_with_invert() -> Dict[str, Tuple["PenState", ...]]:
402 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
405 "direct-erase": (PenState.PEN_IS_ERASING,),
406 "direct-erase -> out-of-range": (
413 def broken_transitions() -> Dict[str, Tuple["PenState", ...]]:
420 "in-range -> touch -> erase -> hover-erase": (
426 "in-range -> erase -> hover-erase": (
431 "hover-erase -> erase -> touch -> in-range": (
437 "hover-erase -> touch -> in-range": (
442 "touch -> erase -> touch -> erase": (
709 p.y -= 1
714 assert len(events) >= 3 # X, Y, SYN
718 p.y -= 1
732 we don't have Invert nor Erase bits, so just move in/out-of-range or proximity.
733 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
830 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
850 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
880 # surface, in-range stays to 1, but when
881 # the pen moves in-range gets reverted to 0
1083 # the pen reliably sends in-range events in a normal case (non emulation of eraser mode)
1141 and 3rd button through Invert
1251 # going out-of-prox: the eraser mode is activated by presenting
1302 # return PenDigitizer('uhid test egalax-capacitive_0eef_7224',
1303d 09 04 a1 01 85 04 09 22 a1 00 09 42 15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 …
1310 # return PenDigitizer('uhid test egalax-capacitive_0eef_72fa',
1311d 09 04 a1 01 85 04 09 22 a1 00 09 42 15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 …
1318 # return PenDigitizer('uhid test egalax-capacitive_0eef_7336',
1319d 09 04 a1 01 85 04 09 22 a1 00 09 42 15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 …
1326 # return PenDigitizer('uhid test egalax-capacitive_0eef_7337',
1327d 09 04 a1 01 85 04 09 22 a1 00 09 42 15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 …
1334 # return PenDigitizer('uhid test egalax-capacitive_0eef_7349',
1335d 09 04 a1 01 85 04 09 22 a1 00 09 42 15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 …
1342 # return PenDigitizer('uhid test egalax-capacitive_0eef_73f4',
1343d 09 04 a1 01 85 04 09 22 a1 00 09 42 15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 …
1351d 09 04 a1 01 85 30 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 09 32 81 02 09 47 81 02 95 05 …
1359d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 09 32 81 02 95 06 81 03 75 08 …
1368d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 09 32 81 02 95 06 81 03 75 08 …
1377d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 09 32 81 02 95 06 81 03 75 08 …
1391d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 95 01 81 03 95 01 81 03 25 1f …
1398d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 95 01 81 03 95 01 81 03 25 1f …
14063e 09 2b 85 2b b1 02 95 fe 09 2c 85 2c b1 02 96 fe 01 09 2d 85 2d b1 02 95 02 09 48 85 48 b1 02 95…
14143e 09 2b 85 2b b1 02 95 fe 09 2c 85 2c b1 02 96 fe 01 09 2d 85 2d b1 02 95 02 09 48 85 48 b1 02 95…
14223e 09 2b 85 2b b1 02 95 fe 09 2c 85 2c b1 02 96 fe 01 09 2d 85 2d b1 02 95 02 09 48 85 48 b1 02 95…
14303e 09 2b 85 2b b1 02 95 fe 09 2c 85 2c b1 02 96 fe 01 09 2d 85 2d b1 02 95 02 09 48 85 48 b1 02 95…
14383e 09 2b 85 2b b1 02 95 fe 09 2c 85 2c b1 02 96 fe 01 09 2d 85 2d b1 02 95 02 09 48 85 48 b1 02 95…
1446d 09 04 a1 01 85 01 09 22 a1 02 55 0e 65 11 35 00 15 00 09 42 25 01 75 01 95 01 81 02 95 07 81 01 …
1461d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f …
1470d 09 04 a1 01 85 01 09 22 a1 02 55 0e 65 11 35 00 15 00 09 42 25 01 75 01 95 01 81 02 25 7f 09 30 …
1481d 09 02 a1 01 85 07 09 20 a1 00 09 42 09 44 09 45 09 3c 15 00 25 01 75 01 95 04 81 02 95 01 81 03 …
1493d 09 02 a1 01 85 07 09 20 a1 00 09 42 09 44 09 45 15 00 25 01 75 01 95 03 81 02 95 02 81 03 09 32 …
1499 hid_bpfs = [HidBpf("Huion__Kamvas-Pro-19.bpf.o", True)]
1504d 09 02 a1 01 85 0a 09 20 a1 01 09 42 09 44 09 43 09 3c 09 45 15 00 25 01 75 01 95 06 81 02 09 32 …