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

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

もずはっく日記(2014年1月)

2014年1月30日

Bug-org 931378 [GTK3] Set input-purpose to GtkIMContext
初回投稿日時: 2014年01月30日13時13分00秒
最終更新日時: 2014年01月30日13時13分41秒
カテゴリ: GTK Mozilla Core Mozilla29 バグ修正
SNS: (list)

GTK 3.6.0以降では、GtkIMContextに、input-purposeというプロパティが設定されており、IMEや、スクリーンキーボードがこれを参考にして、動作を変更することができます。このバグでは、GTK3ビルドが3.6.0以降で動作している場合にのみ、このプロパティを<input>要素のtype属性や、ime-modeプロパティを参考に、適切と思われる値を設定しています。

なお、ime-mode: disabled;<input type="text">や、ime-modeが設定されていない<input type="password">では、GTK_INPUT_PURPOSE_PASSWORDが設定されます。

逆に、ime-mode: normal;ime-mode: inactive;ime-mode: active;が指定されている<input type="password">では、GTK_INPUT_PURPOSE_PASSWORDが設定されないことに注意してください。

この挙動はタブレットでは好ましいスクリーンキーボードが表示されないという結果を生むかもしれませんが、今のところ、通常のIMEを無効化するには、GTK_INPUT_PURPOSE_PASSWORDを設定するしかないという、なんとも中途半端なGTK3の仕様から、このような修正になっています。

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

bug-org 931378を含むエントリ