Bug-org 961704 [TSF] Add an option for nsTextStateManager can ignore text change and selection change which are caused by composition
初回投稿日時: 2014年03月08日20時32分12秒
カテゴリ: Mozilla Core Mozilla30 TSF Windows バグ修正
SNS:
Tweet (list)
TSFは、IMEによるコンテンツの変更をTSFに通知してはいけないという仕様になっているのを、nsTextStore
内でフラグを用いて管理していましたが、未確定文字列の変更等によって発生するDOMイベントからエディタのコンテンツが変更されたことか、IMEの操作による変更なのかの見分けがつかないという問題がありました。
Bug-org 960866の修正により、mozilla::TextComposition
に問い合わせれば、エディタがWidgetTextEvent
を処理中かどうか、つまり、IMEの未確定文字の変更、もしくは確定での変更が発生したのか、他の要因でエディタの内容が変更されたのかを、nsTextStateManager
で判断できるようになりましたので、これを利用し、TSFでは、エディタがWidgetTextEvent
を処理中に発生した変更は無視することができるようになりました。
ただし、nsTextStore
側にはまだ対応をきちんと入れていないため、未確定文字列の変更等の最中にJSから加えられた変更は、まだ、TSFには通知されません。