]> git.immae.eu Git - perso/Immae/Projets/Python/MusicSampler.git/blobdiff - music_sampler/key.py
Fix crash when click on unconfigured key
[perso/Immae/Projets/Python/MusicSampler.git] / music_sampler / key.py
index b73a29cf1b8b83a8ecef8587c628791d014e5daf..ce2f45bafd8bf9ca9cbdf47c48070eb99615e4cb 100644 (file)
@@ -149,14 +149,14 @@ class KeyMachine(Widget):
         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 self.key.repeat_delay > 0:
@@ -290,8 +290,9 @@ class Key(ButtonBehavior, Widget):
     # Helpers
     @property
     def repeat_delay(self):
-         if 'repeat_delay' in self.key.config['properties']:
-             return self.key.config['properties']['repeat_delay']
+         if hasattr(self, 'config') and\
+                 'repeat_delay' in self.config['properties']:
+             return self.config['properties']['repeat_delay']
          else:
              return 0