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

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

もずはっく日記(2009年10月)

2009年10月18日

Bug-org 519631 nsBidiKeyboard.mm is still using KL APIs
初回投稿日時: 2009年10月18日01時13分46秒
カテゴリ: Mozilla Core バグ修正
SNS: (list)

MacのnsBidiKeyboard.mmがまだKL APIを利用しているのでビルド時に警告が出ていた、というバグです。64bit時には問題の機能を捨てていたので、64bitビルドのためのブロッカーからは外されていました。

Geckoのキャレットはいろいろな条件から、現在のテキストがRTLだと判断した場合にキャレットに「髭」を生やしています。その条件のひとつに、現在のキーボードレイアウトの書字方向の確認がありますが、その検査にKL APIを利用していました。

最初はTIS APIでキーボードレイアウトの主要言語から判定しようとしました。しかし、Simon曰く、Appleが用意したキーボードレイアウトでなければ、返ってくる値がデタラメということで没になりました。そこで、任意のキーで入力される文字から言語を判定してはどうかと提案したところ、具体的な判定方法を教えてもらえたのでそのように修正しています。

ちなみに、結果をキャッシュするようにしたので、キャレット表示時の負荷が多少減ってるかもしれません。

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

bug-org 519631を含むエントリ