feat(web): starts Scribe processKeyEvent hook

This commit is contained in:
jahorton 2020-04-28 11:54:48 +07:00
parent 576383d816
commit 8e54552bfc

View file

@ -175,13 +175,13 @@ namespace KMWRecorder {
return _originalKeyDown(e);
}
var event = KMWRecorder.Scribe.recordKeyboardEvent(e);
recorderScribe._currentEvent = KMWRecorder.Scribe.recordKeyboardEvent(e);
var retVal = _originalKeyDown(e);
// Record the keystroke as part of a test sequence!
// Miniature delay in case the keyboard relies upon default backspace/delete behavior!
window.setTimeout(function() {
recorderScribe.addInputRecord(event, in_output.getText());
recorderScribe.addInputRecord(recorderScribe._currentEvent, in_output.getText());
}, 1);
return retVal;
@ -194,11 +194,11 @@ namespace KMWRecorder {
return _originalClickKey(e);
}
var event = KMWRecorder.Scribe.recordOSKEvent(e);
recorderScribe._currentEvent = KMWRecorder.Scribe.recordOSKEvent(e);
var retVal = _originalClickKey(e);
// Record the click/touch as part of a test sequence!
recorderScribe.addInputRecord(event, in_output.getText());
recorderScribe.addInputRecord(recorderScribe._currentEvent, in_output.getText());
return retVal;
}
@ -238,6 +238,17 @@ namespace KMWRecorder {
}
recorderScribe.keyboardJustActivated = false;
}
var _originalProcessKeyEvent = keyman.core.processKeyEvent.bind(keyman.core);
keyman.core.processKeyEvent = function(keyEvent /* com.keyman.text.KeyEvent */) {
let currentDOMEvent = recorderScribe._currentEvent;
_originalProcessKeyEvent(keyEvent);
// TODO: Record the pair.
// Now that we've processed the pair, clear the tracked _currentEvent instance.
recorderScribe._currentEvent = null;
}
}
}
}