Fix Kyle board, and unbreak MO-dependent layers
This commit is contained in:
		| @@ -176,18 +176,18 @@ class InternalState: | ||||
|             # Sets the timer start and acts like MO otherwise | ||||
|             self.start_time['lm'] = ticks_ms() | ||||
|             self.keys_pressed.add(changed_key.kc) | ||||
|             return self.mo(changed_key, is_pressed) | ||||
|             return self._layer_mo(changed_key, is_pressed) | ||||
|  | ||||
|         self.keys_pressed.discard(changed_key.kc) | ||||
|         self.start_time['lm'] = None | ||||
|         return self.mo(changed_key, is_pressed) | ||||
|         return self._layer_mo(changed_key, is_pressed) | ||||
|  | ||||
|     def _layer_lt(self, changed_key, is_pressed): | ||||
|         """Momentarily activates layer if held, sends kc if tapped""" | ||||
|         if is_pressed: | ||||
|             # Sets the timer start and acts like MO otherwise | ||||
|             self.start_time['lt'] = ticks_ms() | ||||
|             return self.mo(changed_key, is_pressed) | ||||
|             return self._layer_mo(changed_key, is_pressed) | ||||
|  | ||||
|         # On keyup, check timer, and press key if needed. | ||||
|         if self.start_time['lt'] and ( | ||||
| @@ -197,7 +197,7 @@ class InternalState: | ||||
|             self.pending_keys.add(changed_key.kc) | ||||
|  | ||||
|         self.start_time['lt'] = None | ||||
|         return self.mo(changed_key, is_pressed) | ||||
|         return self._layer_mo(changed_key, is_pressed) | ||||
|  | ||||
|     def _layer_tg(self, changed_key, is_pressed): | ||||
|         """Toggles the layer (enables it if not active, and vise versa)""" | ||||
| @@ -229,7 +229,7 @@ class InternalState: | ||||
|             if self.start_time['tt'] is None: | ||||
|                 # Sets the timer start and acts like MO otherwise | ||||
|                 self.start_time['tt'] = ticks_ms() | ||||
|                 return self.mo(changed_key, is_pressed) | ||||
|                 return self._layer_mo(changed_key, is_pressed) | ||||
|             elif ticks_diff(ticks_ms(), self.start_time['tt']) < self.tap_time: | ||||
|                 self.start_time['tt'] = None | ||||
|                 return self.tg(changed_key, is_pressed) | ||||
| @@ -240,7 +240,7 @@ class InternalState: | ||||
|             # On first press, works like MO. On second press, does nothing unless let up within | ||||
|             # time window, then acts like TG. | ||||
|             self.start_time['tt'] = None | ||||
|             return self.mo(changed_key, is_pressed) | ||||
|             return self._layer_mo(changed_key, is_pressed) | ||||
|  | ||||
|         return self | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user