ATOKでIME変換中に文字が表示されない問題(未解決)

itouhiroさんより,IME変換中の文字が表示できない事象についてご報告いただきましたが,解決の目処が立っていません.私が事象を確認した環境,再現手順は以下のとおりです.(itouhiroさんが分かりやすいように動画GIFを用意してくださっています >> http://f.hatena.ne.jp/itouhiro/20120911155026

環境
Windows XP SP3 32bit
ATOK 2012 for Windows 25.0.4.0(試用版)
emacs-24.2-20120902 あるいは emacs-24.1-20120716

再現手順
  1. emacsを起動
  2. 別のウィンドウをアクティブ化
  3. Alt + Tabを操作して,emacsをアクティブ化
  4. IMEを有効にして文字を入力


IME変換中の文字が表示されないのは,一度目のみで,それ以降はちゃんと表示されるようです.ただし,再度,他のウィンドウから Alt + Tabで emacsへフォーカスを切り替えた直後は表示されないようです.



emacs-24.1-20120716と emacs-24.1-20120616のソースを比較したところ,w32fns.cの関数 w32_wnd_procにおけるメッセージループ処理を変更していることで今回の事象が発生しているようです.これは,Office IME2010での不具合に対処するための修正であるため,そのまま戻すことができません.



以下は emacs-24.1-20120716のロジックです(ATOKで問題が発生).



case WM_IME_STARTCOMPOSITION:
if (!ignore_ime_char)
{
struct frame *f;
f = x_window_to_frame (dpyinfo, hwnd);

w32_set_ime_conv_window (hwnd, f);
ignore_ime_char = 1;

goto dflt;
}
break;



以下は emacs-24.1-20120616のロジックです(Office IME2010で問題が発生).



case WM_IME_STARTCOMPOSITION:
if (!ignore_ime_char)
{
struct frame *f;
f = x_window_to_frame (dpyinfo, hwnd);

w32_set_ime_conv_window (hwnd, f);
ignore_ime_char = 1;

}
goto dflt;

emacs-24.1-20120616のロジックでは,「goto dflt」により「DefWindowProc」が実行されることにより,メッセージ処理のデフォルト処理を行っているようなので,それがないことにより ATOKの問題が発生しているのではと考えています.(しかし,どの処理が足りないのか,誤っているのかを特定する手段が分からず,現状,行き詰っています…)