Ok, things are getting close. I have all the code pieces talking in a single application (http://philfeldman.com/irev1.html). After playing around with the ways that the key down/up events can be trapped, I decided to do as little processing as possible and simply record the keycode, time and status (up/down). The main reason for this is that things like the shift key are pressed while other keys are typed and then released. This way it’s easier to see that happen.
I also needed to prevent pasting, since that makes everything more complex (recognizing paste events, working around them, etc). It turns out that YUI dosn’t seem to handle the paste event, so you have to get it from the document directly:
var pasteTrap = document.getElementById('submittedTextInput'); pasteTrap.onpaste = function(e){ alert("Paste is not allowed"); return false; }
As usual, we have the fine contributors to StackOverflow to point the way to do this
Amazingly, it even works in all browsers.
Next is cleanup, putting all the pieces into modules where they belong and doing some better css. I think something like secret might be pretty easy to put together. Colored backgrounds before coding up picture loading. But along those lines.
Last thing for the day is to finish the next pass at the IRB submission.