diff options
author | Joel Croteau <jcroteau@gmail.com> | 2014-02-21 01:45:04 -0800 |
---|---|---|
committer | Joel Croteau <jcroteau@gmail.com> | 2014-02-21 01:45:04 -0800 |
commit | a0f9597f9192c1437552b9b94a19f47dd8124861 (patch) | |
tree | 3a4315305872a681ddbaf16d1026c57ba6b991e7 | |
parent | 7ead20ea09f187b9c46709d299154be166d44281 (diff) |
Squashed commit of the following:
commit e2a8165560c7ec6be2d5650e0a3c6a4b520d1f56
Author: Joel Croteau <jcroteau@gmail.com>
Date: Fri Feb 21 01:40:50 2014 -0800
Fix indentation in fillMouseEventData
commit a5d620164e2ab7cb7ba61803c1eedb53f888f4cb
Author: Joel Croteau <jcroteau@gmail.com>
Date: Thu Feb 20 23:56:01 2014 -0800
Remove dependency on Browser.getMovementX/Y
commit 2e4f0a4c5fc9ab1857e33862c49e20c1418320c2
Author: Joel Croteau <jcroteau@gmail.com>
Date: Thu Feb 20 10:27:52 2014 -0800
Fix error that was causing FillMouseEventData to fail with SAFE_HEAP enabled
The parentheses without semicolons generated when using SAFE_HEAP
caused the compiled code to generate SAFE_HEAP_STORE is not a function
errors.
commit 470dbf6bcb3f88c809b3fea41e197680eda08c7e
Author: Joel Croteau <jcroteau@gmail.com>
Date: Thu Feb 20 07:12:02 2014 -0800
Fix bug causing incorrect movement values in mouse events
This adds code to correctly set the movementX and movementY members
of EmscriptenMouseEvents sent to callback functions by the HTML5
event library. movementX and movementY are not members of the base
HTML5 mouse event, so we need to add extra code to retrieve them
for our events.
-rw-r--r-- | src/library_html5.js | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/library_html5.js b/src/library_html5.js index a38c2390..fa75aced 100644 --- a/src/library_html5.js +++ b/src/library_html5.js @@ -188,21 +188,21 @@ var LibraryJSEvents = { fillMouseEventData: function(eventStruct, e) { var rect = Module['canvas'].getBoundingClientRect(); - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.timestamp, 'JSEvents.tick()', 'double') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.screenX, 'e.screenX', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.screenY, 'e.screenY', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.clientX, 'e.clientX', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.clientY, 'e.clientY', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.ctrlKey, 'e.ctrlKey', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.shiftKey, 'e.shiftKey', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.altKey, 'e.altKey', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.metaKey, 'e.metaKey', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.button, 'e.button', 'i16') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.buttons, 'e.buttons', 'i16') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.movementX, 'e.movementX', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.movementY, 'e.movementY', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.canvasX, 'e.clientX - rect.left', 'i32') }}} - {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.canvasY, 'e.clientY - rect.top', 'i32') }}} + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.timestamp, 'JSEvents.tick()', 'double') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.screenX, 'e.screenX', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.screenY, 'e.screenY', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.clientX, 'e.clientX', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.clientY, 'e.clientY', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.ctrlKey, 'e.ctrlKey', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.shiftKey, 'e.shiftKey', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.altKey, 'e.altKey', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.metaKey, 'e.metaKey', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.button, 'e.button', 'i16') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.buttons, 'e.buttons', 'i16') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.movementX, 'e.movementX || e.mozMovementX || e.webkitMovementX', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.movementY, 'e.movementY || e.mozMovementY || e.webkitMovementY', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.canvasX, 'e.clientX - rect.left', 'i32') }}}; + {{{ makeSetValue('eventStruct', C_STRUCTS.EmscriptenMouseEvent.canvasY, 'e.clientY - rect.top', 'i32') }}}; }, registerMouseEventCallback: function(target, userData, useCapture, callbackfunc, eventTypeId, eventTypeString) { |