Bug 6505 [TSF][WinXP] 未確定文字列が表示されない
初回投稿日時: 2009年02月24日17時46分49秒
最終更新日時: 2009年02月24日18時13分46秒
カテゴリ: Mozilla Core TSF Windows バグ修正
SNS:
Tweet (list)
TSFのサポートパッチの投入を今日までこの日記で紹介していなかったのはこのバグのためです。XPに付属のMS-IME 2002では未確定文字列が表示されない、というバグがありました。そのため、テストすらまともにできない、という状況下だったためです(そんな中でもバグをXPで探し続けてくれたmasaさんに感謝です)。
原因はTIPでの処理順序にあります。最初の実装ではITfContextOwnerCompositionSink::OnUpdateComposition
が呼び出された時に未確定文字列の表示を行っていたのですが、MS-IME 2002ではこの時点では未確定文字列の文節等の情報が出揃っていないことが分かりました。
そこで出揃っている場合はここからNS_TEXT_TEXT
イベントを生成するようにしましたが、未完成の場合はITextStoreACP::SetSelection
でも生成するように修正しています。ただし、未確定文字列のちらつきを抑えるために、同じ情報のイベントを複数回送信しないように、イベント生成の直前でそれをチェックするようにしています。