/** * Binding observer.fire to keydown event. */ document.addEventListener("keydown", function(event){keydown_observer.fire(event)}, false); /** * KeyDown event observer. */ var keydown_observer = new function(){ this.listeners = {}; this.emulate_key = function(key_code){ this.fire({"keyCode" : key_code}); }; this.fire = function(e){ var code = e.keyCode || e.which; if (stb && stb.key_lock === true && code != key.FRAME){ _debug('key locked'); return; } if (e.shiftKey){ code += 1000; } if (e.altKey){ code += 2000; } e.key = code; _debug('code:', code); if ([0, 1000, 2000, 3000].indexOf(code) >= 0){ return; } var item; var priority_item; var normal_item; if (!this.triggerCustomEventListener('keypress', e)){ return; } if (this.listeners.hasOwnProperty(code)){ for(var i=0; i