refactoring

This commit is contained in:
Devaev Maxim 2020-10-26 19:48:43 +03:00
parent ad943811f9
commit 3c690816e1

View File

@ -52,18 +52,12 @@ class _ModifierEvent(BaseEvent):
modifier: OtgKey modifier: OtgKey
state: bool state: bool
def __post_init__(self) -> None:
assert self.modifier.is_modifier
@dataclasses.dataclass(frozen=True) @dataclasses.dataclass(frozen=True)
class _KeyEvent(BaseEvent): class _KeyEvent(BaseEvent):
key: OtgKey key: OtgKey
state: bool state: bool
def __post_init__(self) -> None:
assert not self.key.is_modifier
# ===== # =====
class KeyboardProcess(BaseDeviceProcess): class KeyboardProcess(BaseDeviceProcess):
@ -94,10 +88,8 @@ class KeyboardProcess(BaseDeviceProcess):
def send_key_events(self, keys: Iterable[Tuple[str, bool]]) -> None: def send_key_events(self, keys: Iterable[Tuple[str, bool]]) -> None:
for (key, state) in keys: for (key, state) in keys:
otg_key = KEYMAP[key].otg otg_key = KEYMAP[key].otg
if otg_key.is_modifier: cls = (_ModifierEvent if otg_key.is_modifier else _KeyEvent)
self._queue_event(_ModifierEvent(otg_key, state)) self._queue_event(cls(otg_key, state))
else:
self._queue_event(_KeyEvent(otg_key, state))
# ===== # =====