この日記はMozillaのプロダクトへの貢献者としての私の成果を中心に、気になったバグやWeb界隈の話題について書いていますが、 断り書きがある場合を除き、いかなる団体のオフィシャルな見解ではありません。あくまでも個人的なものです。 Mozilla Foundation、Mozilla Corporation、及び関連企業の公式情報ではないことに注意してください。

現在、XHTML 1.0 (もどき)から、HTML5なコンテンツに修正中です。古い日記は修正が完了していませんので表示が崩れます。 順次、修正していく予定ですのでしばらくお待ちください。

もずはっく日記(2008年11月)

2008年11月29日

Bug 6398 Flashのコンテキストメニューを開いても、Fxのコンテキストメニューが閉じないページがある
初回投稿日時: 2008年11月29日01時55分32秒
カテゴリ: Mozilla Core バグ修正
SNS: (list)

WindowsでFxのコンテキストメニューを表示している時に、windowedプラグインを右クリックしてもコンテキストメニューが閉じられない、というバグです。

本家の方では、windowedのJAVAでも発生する、というのがひとつのバグで扱われていました。

前者は、プラグイン上でのクリック時の特殊なフック処理がwindowedプラグインの場合は、rollup処理を走らせていなかったのが原因です。また、windowlessであっても、左クリック以外の場合には処理を行っていなかったので、今回の修正で、rollupのきっかけになり得る全てのマウスイベントでrollup処理を走らせるようにしています。

後者は、特殊で、JAVAはJAVA自身がMozillaのものではないウインドウを自前で生成します。ここまではMozillaも想定していた様で、前述のフックで処理できるはずでした。しかし、JAVAは別スレッドでウインドウを生成してしまうため、フック対象になっていませんでした。このため、フォーカスが失われる際に、フォーカスの移動先がMozillaのウインドウではなく、別のスレッドのものである場合にrollupするようにしています。

関連するかもしれないエントリ

bug 6398を含むエントリ