diff --git a/include/wx/cocoa/mbarman.h b/include/wx/cocoa/mbarman.h index f21dac7899..52a8c058c7 100644 --- a/include/wx/cocoa/mbarman.h +++ b/include/wx/cocoa/mbarman.h @@ -43,7 +43,7 @@ public: void SetMainMenuBar(wxMenuBar* menubar); void CocoaInternalIdle(); void WindowDidBecomeKey(wxTopLevelWindowNative *win); - void WindowDidResignKey(wxTopLevelWindowNative *win); + void WindowDidResignKey(wxTopLevelWindowNative *win, bool uninstallMenuBar = true); void WindowDidBecomeMain(wxTopLevelWindowNative *win); void WindowDidResignMain(wxTopLevelWindowNative *win); void UpdateWindowMenuBar(wxTopLevelWindowNative *win); diff --git a/src/cocoa/mbarman.mm b/src/cocoa/mbarman.mm index b2b916054d..ecdd3d3c16 100644 --- a/src/cocoa/mbarman.mm +++ b/src/cocoa/mbarman.mm @@ -161,21 +161,22 @@ void wxMenuBarManager::InstallMainMenu() void wxMenuBarManager::WindowDidBecomeKey(wxTopLevelWindowNative *win) { -// wxASSERT(!m_windowKey); + wxASSERT(!m_windowKey); m_windowKey = win; InstallMenuBarForWindow(win); } -void wxMenuBarManager::WindowDidResignKey(wxTopLevelWindowNative *win) +void wxMenuBarManager::WindowDidResignKey(wxTopLevelWindowNative *win, bool uninstallMenuBar) { wxASSERT(m_windowKey==win); m_windowKey = NULL; - SetMenuBar(NULL); + if(uninstallMenuBar) + SetMenuBar(NULL); } void wxMenuBarManager::WindowDidBecomeMain(wxTopLevelWindowNative *win) { -// wxASSERT(!m_windowMain); + wxASSERT(!m_windowMain); m_windowMain = win; }