タブグループ化の設定で、
・新規タブが追加されるときウィンドウが非アクティブになる
・Grepで新規Grepタブが追加されるときツールバーなど各種バーが無い状態で表示される
CEditWnd::Create()で、m_cHokanMgr.DoModeless()が実行されると、
まだ何もウィンドウを表示していないのにCreateDialogParam APIの
実行に伴ってWM_ACTIVATEAPPが発生するためと思われます。
SetWindowLongでCEditWnd::DispatchEvent()を有効化するのは上記
処理よりも後にしたほうが良さそうです。
Index: sakura_core/CEditWnd.cpp
===================================================================
--- sakura_core/CEditWnd.cpp (revision 1177)
+++ sakura_core/CEditWnd.cpp (working copy)
@@ -419,7 +419,6 @@
HWND hWnd = _CreateMainWindow(nGroup, sTabGroupInfo);
if(!hWnd)return NULL;
m_hWnd = hWnd;
- ::SetWindowLongPtr( GetHwnd(), GWLP_USERDATA, (LONG_PTR)this );
//コモンコントロール初期化
MyInitCommonControls();
@@ -483,6 +482,10 @@
// -- -- -- -- その他調整など -- -- -- -- //
+
+ // 画面表示直前にDispatchEventを有効化する
+ ::SetWindowLongPtr( GetHwnd(), GWLP_USERDATA, (LONG_PTR)this );
+
// デスクトップからはみ出さないようにする
_AdjustInMonitor(sTabGroupInfo);