Bug 6602 [IMM32] IMEがインストールされている環境だと、フォーカス移動でnsIMM32Handlerのインスタンスが生成される
初回投稿日時: 2009年05月07日17時41分11秒
カテゴリ: Mozilla Core バグ修正
SNS:
Tweet (list)
Bug 6541の修正で、IME関連メッセージの処理をnsIMM32Handler
のインスタンスで処理するようになりましたが、インスタンスが必要無いメッセージの処理でもインスタンスを作成してしまうため、IMEがインストールされている環境では意図通りにメモリを削減できていない、というバグです。
IMEがインストールされていない環境であれば、WM_IME_*
メッセージが来ないのですが、IMEを一度でもインストールしたことある環境だと例えIMEが使えないキーボードレイアウトに変更していたとしても、フォーカスを移動しただけでWM_IME_SETCONTEXT
が送信されてインスタンスが生成されてしまっていました。例えば、TSFしか利用しない場合であってもインスタンスが生成されてしまっていた訳です。
この修正では一部のハンドラをstaticなメソッドとすることでインスタンスを生成せずに処理するように改善しています。