WebPage::performDefaultBehaviorForKeyEvent() doesn't check for modifiers, so it consumes too many variations with the Delete key. This used to be fine in WebKit1, because the logic was in -[FrameView keyDown:], which was only executed after performKeyEquivalent traveled the responder chain - but in WebKit2, the web process doesn't even know if it's handling a keyDown or a performKeyEquivalent. <rdar://problem/9221468>
Created attachment 89083 [details] proposed fix
Comment on attachment 89083 [details] proposed fix r=me Is there any way to make a test for this?
Committed <http://trac.webkit.org/changeset/83522>. We can't test how UI and web processes interact, since WebKitTestRunner only uses injected bundle API.
FYI, this seems to have regressed the behavior in Linux Chrome that pressing backspace should not go back. I'm still looking into why; I don't understand this code too well. I am not upset because we deserved it, since didn't have tests covering this behavior, just thought you might wanna know.
Well yes, this code implements the behavior of going back on backspace in a cross platform manner. I didn't know there was any port that didn't want it, and I'm surprised.