diff options
author | Teddy Wing | 2021-03-21 17:23:11 +0100 |
---|---|---|
committer | Teddy Wing | 2021-03-21 17:47:35 +0100 |
commit | a129f8e229f16292d65ffd9dcf9f8a585aa3fe8a (patch) | |
tree | 02b50df62163bc86570488ecc587489f5c09e3a2 /lib/mousetrap/tests/libs/key-event.js | |
parent | 5ba6d5d6b508c535efb4ab43b02c6c21bfd49185 (diff) | |
download | Peniquitous-a129f8e229f16292d65ffd9dcf9f8a585aa3fe8a.tar.bz2 |
Remove Bower-included Mousetrap
Now that we've added Mousetrap via NPM, we can remove the one we
installed via Bower and Bower files.
Didn't really need to switch to NPM, but I wanted to get a Mousetrap
dependency that included its LICENSE file so I could include it in my
build.
Diffstat (limited to 'lib/mousetrap/tests/libs/key-event.js')
-rw-r--r-- | lib/mousetrap/tests/libs/key-event.js | 129 |
1 files changed, 0 insertions, 129 deletions
diff --git a/lib/mousetrap/tests/libs/key-event.js b/lib/mousetrap/tests/libs/key-event.js deleted file mode 100644 index 44cee7c..0000000 --- a/lib/mousetrap/tests/libs/key-event.js +++ /dev/null @@ -1,129 +0,0 @@ -(function() { - var KeyEvent = function(data, type) { - this.keyCode = 'keyCode' in data ? data.keyCode : 0; - this.charCode = 'charCode' in data ? data.charCode : 0; - - var modifiers = 'modifiers' in data ? data.modifiers : []; - - this.ctrlKey = false; - this.metaKey = false; - this.altKey = false; - this.shiftKey = false; - - for (var i = 0; i < modifiers.length; i++) { - this[modifiers[i] + 'Key'] = true; - } - - this.type = type || 'keypress'; - }; - - KeyEvent.prototype.toNative = function() { - var event = document.createEventObject ? document.createEventObject() : document.createEvent('Events'); - - if (event.initEvent) { - event.initEvent(this.type, true, true); - } - - event.keyCode = this.keyCode; - event.which = this.charCode || this.keyCode; - event.shiftKey = this.shiftKey; - event.metaKey = this.metaKey; - event.altKey = this.altKey; - event.ctrlKey = this.ctrlKey; - - return event; - }; - - KeyEvent.prototype.fire = function(element) { - var event = this.toNative(); - if (element.dispatchEvent) { - element.dispatchEvent(event); - return; - } - - element.fireEvent('on' + this.type, event); - }; - - // simulates complete key event as if the user pressed the key in the browser - // triggers a keydown, then a keypress, then a keyup - KeyEvent.simulate = function(charCode, keyCode, modifiers, element, repeat) { - if (modifiers === undefined) { - modifiers = []; - } - - if (element === undefined) { - element = document; - } - - if (repeat === undefined) { - repeat = 1; - } - - var modifierToKeyCode = { - 'shift': 16, - 'ctrl': 17, - 'alt': 18, - 'meta': 91 - }; - - // if the key is a modifier then take it out of the regular - // keypress/keydown - if (keyCode == 16 || keyCode == 17 || keyCode == 18 || keyCode == 91) { - repeat = 0; - } - - var modifiersToInclude = []; - var keyEvents = []; - - // modifiers would go down first - for (var i = 0; i < modifiers.length; i++) { - modifiersToInclude.push(modifiers[i]); - keyEvents.push(new KeyEvent({ - charCode: 0, - keyCode: modifierToKeyCode[modifiers[i]], - modifiers: modifiersToInclude - }, 'keydown')); - } - - // @todo factor in duration for these - while (repeat > 0) { - keyEvents.push(new KeyEvent({ - charCode: 0, - keyCode: keyCode, - modifiers: modifiersToInclude - }, 'keydown')); - - keyEvents.push(new KeyEvent({ - charCode: charCode, - keyCode: charCode, - modifiers: modifiersToInclude - }, 'keypress')); - - repeat--; - } - - keyEvents.push(new KeyEvent({ - charCode: 0, - keyCode: keyCode, - modifiers: modifiersToInclude - }, 'keyup')); - - // now lift up the modifier keys - for (i = 0; i < modifiersToInclude.length; i++) { - var modifierKeyCode = modifierToKeyCode[modifiersToInclude[i]]; - modifiersToInclude.splice(i, 1); - keyEvents.push(new KeyEvent({ - charCode: 0, - keyCode: modifierKeyCode, - modifiers: modifiersToInclude - }, 'keyup')); - } - - for (i = 0; i < keyEvents.length; i++) { - // console.log('firing', keyEvents[i].type, keyEvents[i].keyCode, keyEvents[i].charCode); - keyEvents[i].fire(element); - } - }; - - window.KeyEvent = KeyEvent; -}) (); |