From 53b0c2bcdd12b518a39af0fbcb8f68778d96d88a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 13 Nov 2007 16:16:04 +0000 Subject: [PATCH] correction to the changes of r49805 to make the code work as expected git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/msw/window.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/msw/window.cpp b/src/msw/window.cpp index 8037b29d9d..40793fa535 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -2261,9 +2261,13 @@ bool wxWindowMSW::MSWProcessMessage(WXMSG* pMsg) wxWindow *win = this; if ( !bCtrlDown ) { + // this will contain the dialog code of this + // window and all of its parent windows + LONG lDlgCode2 = lDlgCode; + while ( win && !win->IsTopLevel() ) { - if ( lDlgCode & DLGC_WANTMESSAGE ) + if ( lDlgCode2 & DLGC_WANTMESSAGE ) { // as it wants to process Enter itself, // don't call IsDialogMessage() which @@ -2271,6 +2275,14 @@ bool wxWindowMSW::MSWProcessMessage(WXMSG* pMsg) return false; } + lDlgCode2 = ::SendMessage + ( + GetHwndOf(win), + WM_GETDLGCODE, + 0, + 0 + ); + win = win->GetParent(); } }