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

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

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

2009年5月7日

Bug 6380 IMEの状態をJavascriptのコードから取得できるべき #2
初回投稿日時: 2009年05月07日17時21分25秒
カテゴリ: Mozilla Core バグ修正
SNS: (list)

IMEの有効、無効等を自動テストで実現するために、状態を取得するAPIを追加しました。

nsIDOMWindowUtils::IMEIsOpenでIMEのオン/オフ状態を、nsIDOMWindowUtils::IMEStatusでIMEの状態(有効、無効(パスワードエディタ用)、無効(非エディタ用)、プラグイン用)が取得できます。

IMEの状態は内部的にはnsIWidget単位で管理されています。これが意味するのは、要素毎にIMEの状態を持っている訳ではないということです。また、複数のnsIWidgetで一つのコンテキストを共有していることもありますが、この辺はプラットフォーム依存です。ですので、これらのプロパティで取得できる状態をキャッシュしないでください。つまり、必要がある場合は逐一、これらのプロパティから最新情報を取得してください。

これらのAPIはIMEの状態をかなり低いレベルのまま取得できるので、Geckoの今後の仕様変更の影響をダイレクトに受けることに注意してください。これらは拡張からも利用できるようにしているだけで、かなりunstableであることは保証しておきます。

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

bug 6380を含むエントリ

Bug 6380 IMEの状態をJavascriptのコードから取得できるべき