Lines Matching +full:1 +full:- +full:15
2 # SPDX-License-Identifier: GPL-2.0
3 # -*- coding: utf-8 -*-
23 https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
37 def from_evdev(cls, evdev) -> "PenState":
58 def apply(self, events) -> "PenState":
91 def valid_transitions(self) -> Tuple["PenState", ...]:
93 for skipping the in-range state, due to historical reasons.
145 self.tippressure = 15
236 def legal_transitions() -> Dict[str, Tuple[PenState, ...]]:
238 we don't have Invert nor Erase bits, so just move in/out-of-range or proximity.
239 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
242 "in-range": (PenState.PEN_IS_IN_RANGE,),
243 "in-range -> out-of-range": (
247 "in-range -> touch": (PenState.PEN_IS_IN_RANGE, PenState.PEN_IS_IN_CONTACT),
248 "in-range -> touch -> release": (
253 "in-range -> touch -> release -> out-of-range": (
262 def legal_transitions_with_invert() -> Dict[str, Tuple[PenState, ...]]:
266 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
269 "hover-erasing": (PenState.PEN_IS_IN_RANGE_WITH_ERASING_INTENT,),
270 "hover-erasing -> out-of-range": (
274 "hover-erasing -> erase": (
278 "hover-erasing -> erase -> release": (
283 "hover-erasing -> erase -> release -> out-of-range": (
289 "hover-erasing -> in-range": (
293 "in-range -> hover-erasing": (
300 def tolerated_transitions() -> Dict[str, Tuple[PenState, ...]]:
305 "direct-in-contact": (PenState.PEN_IS_IN_CONTACT,),
306 "direct-in-contact -> out-of-range": (
313 def tolerated_transitions_with_invert() -> Dict[str, Tuple[PenState, ...]]:
317 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
320 "direct-erase": (PenState.PEN_IS_ERASING,),
321 "direct-erase -> out-of-range": (
328 def broken_transitions() -> Dict[str, Tuple[PenState, ...]]:
335 "in-range -> touch -> erase -> hover-erase": (
341 "in-range -> erase -> hover-erase": (
346 "hover-erase -> erase -> touch -> in-range": (
352 "hover-erase -> touch -> in-range": (
357 "touch -> erase -> touch -> erase": (
374 input_info=(BusType.USB, 1, 2), argument
400 return (1, [])
408 return (1, [])
410 return (1, [])
414 return 1
422 return 1
424 return 1
448 events = events[idx + 1 :]
477 p.x += 1
478 p.y -= 1
484 p.x += 1
485 p.y -= 1
497 we don't have Invert nor Erase bits, so just move in/out-of-range or proximity.
498 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
529 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
549 … https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/windows-pen-states
577 { 0, 0, 1 } <- hover
578 { 0, 1, 1 } <- primary button pressed
579 { 0, 1, 1 } <- liftoff
580 { 0, 0, 0 } <- leaves
589 assert libevdev.InputEvent(libevdev.EV_KEY.BTN_TOOL_PEN, 1) in events
596 assert libevdev.InputEvent(libevdev.EV_KEY.BTN_STYLUS, 1) in events
598 p.x += 1
599 p.y -= 1
620 { 0, 0, 1 } <- hover
621 { 0, 1, 1 } <- primary button pressed
622 { 1, 1, 1 } <- touch-down
623 { 1, 1, 1 } <- still touch, scribble on the screen
624 { 0, 1, 1 } <- liftoff
625 { 0, 0, 0 } <- leaves
634 assert libevdev.InputEvent(libevdev.EV_KEY.BTN_TOOL_PEN, 1) in events
641 assert libevdev.InputEvent(libevdev.EV_KEY.BTN_STYLUS, 1) in events
645 assert libevdev.InputEvent(libevdev.EV_KEY.BTN_TOUCH, 1) in events
648 p.x += 1
649 p.y -= 1
674 # surface, in-range stays to 1, but when
675 # the pen moves in-range gets reverted to 0
682 # inverted, invert is set to 1, but as soon as
684 # set to 1 but invert is released
702 # return PenDigitizer('uhid test egalax-capacitive_0eef_7224',
703 …15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 75 05 95 01 16 00 00 26 10 00 81 02 09…
710 # return PenDigitizer('uhid test egalax-capacitive_0eef_72fa',
711 …15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 75 05 95 01 16 00 00 26 10 00 81 02 09…
718 # return PenDigitizer('uhid test egalax-capacitive_0eef_7336',
719 …15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 75 05 95 01 16 00 00 26 10 00 81 02 09…
726 # return PenDigitizer('uhid test egalax-capacitive_0eef_7337',
727 …15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 75 05 95 01 16 00 00 26 10 00 81 02 09…
734 # return PenDigitizer('uhid test egalax-capacitive_0eef_7349',
735 …15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 75 05 95 01 16 00 00 26 10 00 81 02 09…
742 # return PenDigitizer('uhid test egalax-capacitive_0eef_73f4',
743 …15 00 25 01 75 01 95 01 81 02 09 32 15 00 25 01 81 02 09 51 75 05 95 01 16 00 00 26 10 00 81 02 09…
751 …15 00 25 01 95 02 75 01 81 02 95 06 81 03 05 01 09 30 09 31 15 00 26 ff 7f 75 10 95 02 81 02 c0 c0…
759 …15 00 25 01 75 01 95 01 81 02 09 32 81 02 95 06 81 03 75 08 09 51 95 01 81 02 05 01 26 ff 3f 75 10…
768 …15 00 25 01 75 01 95 01 81 02 09 32 81 02 95 06 81 03 75 08 09 51 95 01 81 02 05 01 26 ff 3f 75 10…
777 …15 00 25 01 75 01 95 01 81 02 09 32 81 02 95 06 81 03 75 08 09 51 95 01 81 02 05 01 26 ff 3f 75 10…
791 …15 00 25 01 75 01 95 01 81 02 95 01 81 03 95 01 81 03 25 1f 75 05 09 51 81 02 05 01 55 0e 65 11 35…
798 …15 00 25 01 75 01 95 01 81 02 95 01 81 03 95 01 81 03 25 1f 75 05 09 51 81 02 05 01 55 0e 65 11 35…
806 …15 00 26 ff 00 06 0b ff 09 0b a1 01 95 0f 09 29 85 29 b1 02 95 1f 09 2a 85 2a b1 02 95 3e 09 2b 85…
814 …15 00 26 ff 00 06 0b ff 09 0b a1 01 95 0f 09 29 85 29 b1 02 95 1f 09 2a 85 2a b1 02 95 3e 09 2b 85…
822 …15 00 26 ff 00 06 0b ff 09 0b a1 01 95 0f 09 29 85 29 b1 02 95 1f 09 2a 85 2a b1 02 95 3e 09 2b 85…
830 …15 00 26 ff 00 06 0b ff 09 0b a1 01 95 0f 09 29 85 29 b1 02 95 1f 09 2a 85 2a b1 02 95 3e 09 2b 85…
838 …15 00 26 ff 00 06 0b ff 09 0b a1 01 95 0f 09 29 85 29 b1 02 95 1f 09 2a 85 2a b1 02 95 3e 09 2b 85…
846 …15 00 09 42 25 01 75 01 95 01 81 02 95 07 81 01 95 01 75 08 09 51 81 02 75 10 05 01 26 00 14 46 1f…
861 …15 00 25 01 75 01 95 01 81 02 75 01 81 03 75 06 09 51 25 3f 81 02 26 ff 00 75 08 55 0f 65 11 35 00…
870 …15 00 09 42 25 01 75 01 95 01 81 02 25 7f 09 30 75 07 81 42 95 01 75 08 09 51 81 02 75 10 05 01 26…