Bug-org 865561 When WM_APPCOMMAND is caused by a key press, the handler should dispatch key event with D3E's KeyboardEvent.key
初回投稿日時: 2014年12月31日22時47分11秒
カテゴリ: Events Mozilla Core Mozilla37 Windows バグ修正
SNS:
Tweet (list)
Windowsでは、マルチメディアキーボードの、メール関連のキーや、編集関連のキー等が押された場合に、通常のWM_KEYDOWN
メッセージではなく、WM_APPCOMMAND
というメッセージがアプリに送信されます。Geckoはこれを受け取ると、内部向けのコマンドイベントを生成し、処理していますが、WM_APPCOMMAND
は、その原因がキー操作かそれ以外かが分かるようになっていますので、D3Eで定義されたキーであれば、最初にkeydown
イベントを生成し、これがpreventDefault()
で、デフォルトアクションをキャンセルされていなければ、従来通り、内部向けのコマンドイベントを生成し、最後に、keyup
イベントを生成するようにしました。
色々と細かい話があったはずなのですが、半年前に書いて、塩漬けになっていたパッチですので、細かいことは忘れてしまいました……