From 5d0011130fad803fa33e5234e93247a63a0c8943 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D1=83=D0=B4=D1=80=D0=BE=D0=B2=20=D0=90=D0=BB=D0=B5?= =?UTF-8?q?=D0=BA=D1=81=D0=B5=D0=B9=20=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D0=BC?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B8=D1=87?= Date: Thu, 11 Feb 2016 14:38:45 +0700 Subject: [PATCH] Keypress event changed to keydown. It allows to control the extension with different keyboard layouts. --- inject.js | 7 +++---- options.js | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/inject.js b/inject.js index 565c95f..9b76702 100644 --- a/inject.js +++ b/inject.js @@ -155,11 +155,10 @@ chrome.extension.sendMessage({}, function(response) { document.head.appendChild(link); } - document.addEventListener('keypress', function(event) { - // if lowercase letter pressed, check for uppercase key code - var keyCode = String.fromCharCode(event.keyCode).toUpperCase().charCodeAt(); + document.addEventListener('keydown', function(event) { + var keyCode = event.keyCode; - // Ignore keypress event if typing in an input box + // Ignore keydown event if typing in an input box if ((document.activeElement.nodeName === 'INPUT' && document.activeElement.getAttribute('type') === 'text') || document.activeElement.isContentEditable) { diff --git a/options.js b/options.js index c9b9011..d2e70d3 100644 --- a/options.js +++ b/options.js @@ -113,7 +113,7 @@ function restore_defaults() { function initShortcutInput(inputId) { document.getElementById(inputId).addEventListener('focus', inputFocus); document.getElementById(inputId).addEventListener('blur', inputBlur); - document.getElementById(inputId).addEventListener('keypress', recordKeyPress); + document.getElementById(inputId).addEventListener('keydown', recordKeyPress); } document.addEventListener('DOMContentLoaded', function () {