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

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

もずはっく日記(2013年5月)

2013年5月31日

Bug-org 807893 Get rid of nsIWidget::BeginSecureKeyboardInput() and nsIWidget::EndSecureKeyboardInput()
初回投稿日時: 2013年05月31日20時06分36秒
カテゴリ: Mac Mozilla Core Mozilla24 バグ修正
SNS: (list)

Macでは、パスワード入力の際には、他のアプリケーションにキーイベントを監視されないように、セキュアなイベント伝達モードに切り替えないといけないのですが、これの切り替えを実装する際、フォーカスの移動時に、nsIMEStateManagerで、nsIWidget::BeginSecureKeyboardInput()nsIWidget::EndSecureKeyboardInput()を呼び出して管理するようにしていました。

しかし、Mac以外ではこのような機能そのものが必要ないこと、また、nsIWidget::SetInputContext()の改良で、nsIWidgetの実装側で、パスワードエディタがフォーカスを取得した、もしくは失ったタイミングが分かるように改善しているので、これらを利用するようにし、インターフェースからはこれらの無駄なメソッドを削除しました。

また、この修正により、Geckoのパスワードエディタがフォーカスを持った状態で他のアプリに切り替えた際に、このセキュアなイベント伝達モードが継続してしまっていたバグもあわせて修正されています。

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

bug-org 807893を含むエントリ