self.key.parent.parent.ids['KeyList'].append(self.key.key_sym)
debug_print("running actions for {}".format(self.key.key_sym))
start_time = time.time()
- self.key.parent.start_running(self, start_time)
+ self.key.parent.start_running(self.key, start_time)
for self.key.current_action in self.key.actions:
- if self.key.parent.keep_running(self, start_time):
+ if self.key.parent.keep_running(self.key, start_time):
self.key.list_actions()
self.key.current_action.run(start_time)
self.key.list_actions(last_action_finished=True)
- self.key.parent.finished_running(self, start_time)
+ self.key.parent.finished_running(self.key, start_time)
def on_enter_loaded_protecting_repeat(self, modifiers):
- if 'repeat_delay' in self.key.config['properties']:
+ if self.key.repeat_delay > 0:
self.key.protecting_repeat_timer = threading.Timer(
- self.key.config['properties']['repeat_delay'],
+ self.key.repeat_delay,
self.key.repeat_protection_finished)
self.key.protecting_repeat_timer.start()
else:
def unset_color(self):
self.custom_color = [0, 1, 0]
+ # Helpers
+ @property
+ def repeat_delay(self):
+ if 'repeat_delay' in self.key.config['properties']:
+ return self.key.config['properties']['repeat_delay']
+ else:
+ return 0
+
# Actions handling
def add_action(self, action_name, **arguments):
self.actions.append(Action(action_name, self, **arguments))