Open jwm opened 8 years ago
+1 I believe I am experiencing the same thing using directives with bind logic (multiple directives = binds to the same keys) only binds and work for one of them.
+1 Issue present event when events are in the same controller.
hotkeys.bindTo($scope)
.add({
combo: 's',
action: 'keydown',
description: 'Do a thing 1',
callback: function (event, hotkey) {
console.log('s - keydown');
}
})
.add({
combo: 's',
action: 'keyup',
description: 'Do a thing 2',
callback: function (event, hotkey) {
console.log('s - keyup');
}
});
I believe solution already provided in https://github.com/chieffancypants/angular-hotkeys/pull/193
+1 experiencing the same problem with combo: 'shift' for action: 'keydown' and action: 'keyup'
Edit:
It actually works if I add the 'keyup' action before I add the 'keydown' action.
I define a hotkey in Controller A like so:
and a different hotkey in Controller B in the same way, except I omit the
action
:I load (in a web browser) an Angular route that uses only Controller A, then click a link to view a different route that uses only Controller B.
The hotkey works fine in the Controller A route, but does not work in Controller B's. The cheat sheet shows the hotkey in both cases, with the correct description for the respective controller. Once I remove the
action
on the first hotkey, the second hotkey starts working.This feels like something is wrong when scrubbing the scope's keybinding state. I don't have a proof of concept (this behavior is in a much larger app), but please let me know if I can help. I'm using Angular 1.3.15 (a little old, but we haven't had a chance to upgrade) and the latest version of angular-hotkeys.