言葉足らずでかなり理解が怪しくなりそうなので、大きく変更・追記しました。
最近のGTK2上でキーボードのキーを押しっぱなしにすると、DOMキーイベントが
keydown 
keypress 
keypress 
... 
keyup 
という順序で生成され、keydownイベントを期待しているWebアプリが動かなくなっている、というバグです。
調べてみると、Ubuntu 9.4では、
keydown 
keypress 
keyup 
keydownkeypress 
keyup 
... 
と、リピート入力時にも、keydown、keypress、keyupがワンセットで生成されていました。
GTK2のネイティブには、key pressイベントと、key releaseイベントのみがあります。Geckoはkey pressイベントを受け取ると、コンテンツに対して、keydownイベントと、keypressイベントを生成しています。
DOM3でキーイベントの発生順序が定義されていなかった時に、Linux版のGeckoは、現在と同じ、
keydown 
keypress 
keypress 
... 
keyup 
という順序になるように、keydownイベントを最初のネイティブのkey pressイベントでしか生成しないように、あえて制限を行っていました。
ところが、Ubuntu 9.4当時のGTK2は、リピート時に、key pressイベントだけではなく、key upイベントもワンセットで送信するように挙動を変更していました。これにより、keydownをリピートごとに生成しないようにする、というコードが動くことが無くなっていました。
この時点でGeckoの開発者としてはバグに気づくべきでした。想定していた通りのイベントがプラットフォームからは来なくなっていましたので。しかし、残念ながらこれを自動でテストする手段はまだ見つかっていませんので、この問題は発見されていませんでした。
ここで、Web開発者の視点に立ってみると、DOM3で最近提案されたキーイベントの順序とは異なり、余計なkeyupが来るものの、keypressイベントの前には常にkeydownイベントが必ず発生するようにGeckoが修正されたかのように見えます。
ですが、Ubuntu 9.10以降のGTK2では、リピート時に再び、key upイベントを送信してこなくなりました。このため、Geckoのkeydownイベントの抑制コードが再び動くようになりました。これにより、DOM3のイベント順序案からさらに離れた、昔のイベントの発生順序に戻ってしまい、DOM3を意識したWebアプリケーションの動作に悪影響が出ていたわけです。
今回の修正で、Windows版と同様、DOM3の仕様案通りに、
keydown 
keypress 
keydown 
keypress 
...keyup 
という順序でkeypressイベントの前には必ずkeydownイベントがリピートされるようになりました。
なお、Mac版の修正はBug-org 599887で承認待ちになっています。