X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c64755ed1ad825e3a5b6ddc71bc77e8f25fc5999..6d7b547184bfdcdf67790755deb0122050b1d728:/src/mac/carbon/app.cpp?ds=inline diff --git a/src/mac/carbon/app.cpp b/src/mac/carbon/app.cpp index 441eac5ef1..154369334d 100644 --- a/src/mac/carbon/app.cpp +++ b/src/mac/carbon/app.cpp @@ -24,18 +24,18 @@ #include "wx/menu.h" #include "wx/pen.h" #include "wx/brush.h" + #include "wx/palette.h" + #include "wx/icon.h" + #include "wx/cursor.h" + #include "wx/dialog.h" + #include "wx/msgdlg.h" + #include "wx/textctrl.h" + #include "wx/memory.h" + #include "wx/gdicmn.h" #endif -#include "wx/gdicmn.h" -#include "wx/cursor.h" -#include "wx/icon.h" -#include "wx/palette.h" -#include "wx/dialog.h" -#include "wx/msgdlg.h" #include "wx/module.h" -#include "wx/memory.h" #include "wx/tooltip.h" -#include "wx/textctrl.h" #include "wx/docview.h" #include "wx/filename.h" @@ -67,8 +67,6 @@ # include #endif -extern wxList wxPendingDelete; - #if wxUSE_THREADS extern size_t g_numberOfThreads; #endif @@ -1578,14 +1576,18 @@ bool wxApp::MacSendCharEvent( wxWindow* focus , long keymessage , long modifiers { if ( keyval == WXK_RETURN ) { - wxButton *def = wxDynamicCast(focus->GetDefaultItem(), wxButton); - if ( def && def->IsEnabled() ) + wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(focus), wxTopLevelWindow); + if ( tlw && tlw->GetDefaultItem() ) { - wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, def->GetId() ); - event.SetEventObject(def); - def->Command(event); + wxButton *def = wxDynamicCast(tlw->GetDefaultItem(), wxButton); + if ( def && def->IsEnabled() ) + { + wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, def->GetId() ); + event.SetEventObject(def); + def->Command(event); - return true ; + return true ; + } } } else if (keyval == WXK_ESCAPE || (keyval == '.' && modifiers & cmdKey ) )