Merge pull request #13 from klardotsh/topic-hid

Turn this semi-automatic keyboard into a full auto
This commit is contained in:
Josh Klar 2018-09-16 23:35:32 -07:00 committed by GitHub
commit 1ab98162ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -120,21 +120,20 @@ class HIDHelper:
return self
def add_modifier(self, modifier):
if modifier.is_modifier and Keycodes.Modifiers.contains(modifier):
if modifier.is_modifier:
self._evt[0] |= modifier.code
return self
raise ValueError('Attempted to use non-modifier as a modifier')
def remove_modifier(self, modifier):
if modifier.is_modifier and Keycodes.Modifiers.contains(modifier):
if modifier.is_modifier:
self._evt[0] ^= modifier.code
return self
raise ValueError('Attempted to use non-modifier as a modifier')
def add_key(self, key):
if key and Keycodes.contains(key):
# Try to find the first empty slot in the key report, and fill it
placed = False
for pos in range(2, 8):
@ -148,10 +147,7 @@ class HIDHelper:
return self
raise ValueError('Invalid keycode?')
def remove_key(self, key):
if key and Keycodes.contains(key):
removed = False
for pos in range(2, 8):
if self._evt[pos] == key.code:
@ -162,5 +158,3 @@ class HIDHelper:
self.logger.warning('Tried to remove key that was not added')
return self
raise ValueError('Invalid keycode?')