Bug-org 685395 Redesign IME APIs of nsIWidget for mobile devices
 初回投稿日時: 2011-11-29 10:06:50
カテゴリ: Mozilla Core Mozilla11 バグ修正 
SNS: 
	Tweet (list)
	
nsIWidgetのIME関連のAPIの整理です。
SetIMEEnabled()、GetIMEEnabled()はFx4以降、動作しなくなっていましたが、完全に削除されました。
SetInputMode()、GetInputMode()はSetInputContext()とGetInputContext()に改名され、そのパラメータのInputContextからはmReasonが削除され、代わりにSetInputContext()に追加のパラメータで、その呼び出し理由となったユーザのアクション、もしくはコンテンツの変化を通知するようになりました。これにより、実際には保証されていなかった、GetIMEEnabled()で最後に変更があった際の理由を取得するという機能は取り除かれました。
SetIMEOpenState()とGetIMEOpenState()はそれぞれ、SetInputContext()とGetInputContext()に統合されたため、削除されました。
これらの変更で、APIの形をnsIContent側と共通化できたので、nsIContentで定義されていたIMEの状態を示すフラグは全て廃止され、content側のコードでもwidget側で定義したmozilla::widget::IMEStateを利用するようになりました。これで、二つの状態フラグの存在によるイージーミスを防止することができます。