aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCliffyA <adam@hulkamaniac.com>2013-12-17 04:22:07 +1100
committerCliffyA <adam@hulkamaniac.com>2013-12-17 04:22:07 +1100
commit609f6dbf89137c969d7e78d05be083d835430684 (patch)
treef9a8baf9979dbcc38affd1d985ae9b3a921db33a /src
parent6df9b82b4a1c6c5ab7dfa056ed041153d94c58ec (diff)
Fix for glfwSetCharCallback not being fired if glfwSetKeyCallback was also registered
Diffstat (limited to 'src')
-rw-r--r--src/library_glfw.js8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/library_glfw.js b/src/library_glfw.js
index 647d4bb6..17e8956a 100644
--- a/src/library_glfw.js
+++ b/src/library_glfw.js
@@ -120,7 +120,6 @@ var LibraryGLFW = {
if (event.charCode) {
var char = GLFW.getUnicodeChar(event.charCode);
if (char !== null && GLFW.charFunc) {
- event.preventDefault();
Runtime.dynCall('vii', GLFW.charFunc, [event.charCode, 1]);
}
}
@@ -130,13 +129,18 @@ var LibraryGLFW = {
var key = GLFW.DOMToGLFWKeyCode(event.keyCode);
if (key && GLFW.keyFunc) {
GLFW.keys[key] = status;
- event.preventDefault();
Runtime.dynCall('vii', GLFW.keyFunc, [key, status]);
}
},
onKeydown: function(event) {
GLFW.onKeyChanged(event, 1);//GLFW_PRESS
+ // This logic comes directly from the sdl implementation. We cannot
+ // call preventDefault on all keydown events otherwise onKeyPress will
+ // not get called
+ if (event.keyCode === 8 /* backspace */ || event.keyCode === 9 /* tab */) {
+ event.preventDefault();
+ }
},
onKeyup: function(event) {