Skip to content

Commit

Permalink
Merge pull request #115 from jimevans/sendkeys_fixes
Browse files Browse the repository at this point in the history
Adding support for NULL key.
  • Loading branch information
detro committed Nov 3, 2012
2 parents 714f774 + 1380c87 commit 222458f
Showing 1 changed file with 18 additions and 14 deletions.
32 changes: 18 additions & 14 deletions src/inputs.js
Expand Up @@ -215,22 +215,26 @@ ghostdriver.Inputs = function () {
var key = keys[i]; var key = keys[i];
var actualKey = _translateKey(session, key); var actualKey = _translateKey(session, key);


if (_isModifierKey(key)) { if (key === '\uE000') {
if (_isModifierKeyPressed(key)) { _clearModifierKeys(session);
_keyUp(session, actualKey);
} else {
_keyDown(session, actualKey);
}
} else { } else {
if (_implicitShiftKeys.hasOwnProperty(actualKey)) { if (_isModifierKey(key)) {
session.getCurrentWindow().sendEvent("keydown", _translateKey(session, "\uE008")); if (_isModifierKeyPressed(key)) {
_pressKey(session, actualKey); _keyUp(session, actualKey);
session.getCurrentWindow().sendEvent("keyup", _translateKey(session, "\uE008"));
} else {
if ((_currentModifierKeys & _modifierKeyValues.SHIFT) && _shiftKeys.hasOwnProperty(actualKey)) {
_pressKey(session, _shiftKeys[actualKey]);
} else { } else {
_keyDown(session, actualKey);
}
} else {
if (_implicitShiftKeys.hasOwnProperty(actualKey)) {
session.getCurrentWindow().sendEvent("keydown", _translateKey(session, "\uE008"));
_pressKey(session, actualKey); _pressKey(session, actualKey);
session.getCurrentWindow().sendEvent("keyup", _translateKey(session, "\uE008"));
} else {
if ((_currentModifierKeys & _modifierKeyValues.SHIFT) && _shiftKeys.hasOwnProperty(actualKey)) {
_pressKey(session, _shiftKeys[actualKey]);
} else {
_pressKey(session, actualKey);
}
} }
} }
} }
Expand Down Expand Up @@ -286,14 +290,14 @@ ghostdriver.Inputs = function () {
}, },


_keyUp = function (session, key) { _keyUp = function (session, key) {
_keyEvent(session, "keyup", key);
if (key == _translateKey(session, "\uE008")) { if (key == _translateKey(session, "\uE008")) {
_updateModifierKeys(_modifierKeyValues.SHIFT, false); _updateModifierKeys(_modifierKeyValues.SHIFT, false);
} else if (key == _translateKey(session, "\uE009")) { } else if (key == _translateKey(session, "\uE009")) {
_updateModifierKeys(_modifierKeyValues.CONTROL, false); _updateModifierKeys(_modifierKeyValues.CONTROL, false);
} else if (key == _translateKey(session, "\uE00A")) { } else if (key == _translateKey(session, "\uE00A")) {
_updateModifierKeys(_modifierKeyValues.ALT, false); _updateModifierKeys(_modifierKeyValues.ALT, false);
} }
_keyEvent(session, "keyup", key);
}, },


_mouseClick = function (session, coords) { _mouseClick = function (session, coords) {
Expand Down

0 comments on commit 222458f

Please sign in to comment.