commit d7f946e5cbe74afc66ea92afbac61beb5936d787
parent 3fa5b2d2ad4856fbac4023002bde6767f92f4641
Author: Davide P. Cervone <dpvc@union.edu>
Date: Sat, 12 Sep 2015 17:35:41 -0400
Handle keyboard events and menu placement better in IE < 9
Diffstat:
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/unpacked/extensions/MathEvents.js b/unpacked/extensions/MathEvents.js
@@ -161,6 +161,7 @@
// Keydown event handler. Should only fire on Space key.
//
Keydown: function (event, math) {
+ if (!event) event = window.event;
if (event.keyCode === EVENT.KEY.SPACE) {
EVENT.ContextMenu(event, this);
};
diff --git a/unpacked/extensions/MathMenu.js b/unpacked/extensions/MathMenu.js
@@ -311,7 +311,7 @@
div.appendChild(menu);
this.posted = true;
- menu.style.width = (menu.offsetWidth+2) + "px";
+ if (menu.offsetWidth) menu.style.width = (menu.offsetWidth+2) + "px";
if (event) {
var x = event.pageX, y = event.pageY;
}
@@ -321,7 +321,7 @@
}
if (!parent) {
var node = MENU.CurrentNode() || event.target;
- if (!x && !y && node) {
+ if ((event.type === "keydown" || (!x && !y)) && node) {
var offsetX = window.pageXOffset || document.documentElement.scrollLeft;
var offsetY = window.pageYOffset || document.documentElement.scrollTop;
var rect = node.getBoundingClientRect();