ref: 2360b77812e184902e44c7f4ea2f6fc79729e370
parent: 5dc559c8be1b8f6ed15f560433f25c952c874f93
author: Simon Tatham <anakin@pobox.com>
date: Fri Apr 5 11:49:27 EDT 2013
Rewrite the JS keyboard handling to cope with IE and Chrome. Unlike Firefox, IE and Chrome don't generate keypress events at all if you suppress the default handling of keydowns. Therefore, we have to figure out everything from the keydown event, because if we unsuppress the default handling of any keydowns then we'll get annoyances like ^R going back to meaning reload-page rather than redo-move. [originally from svn r9810]