From: Paul Cornett Date: Sat, 31 Oct 2009 16:29:19 +0000 (+0000) Subject: make sure ShowWithoutActivating only takes effect once X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/e88f9403f0ca82283d58dc1378e1d231d2c37875?ds=inline make sure ShowWithoutActivating only takes effect once git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/gtk/toplevel.cpp b/src/gtk/toplevel.cpp index e0118f9dea..df40a213c3 100644 --- a/src/gtk/toplevel.cpp +++ b/src/gtk/toplevel.cpp @@ -358,6 +358,8 @@ gtk_frame_map_callback( GtkWidget*, eventShow.SetEventObject(win); win->GetEventHandler()->ProcessEvent(eventShow); } + // restore focus-on-map setting in case ShowWithoutActivating() was called + gtk_window_set_focus_on_map(GTK_WINDOW(win->m_widget), true); return false; } } @@ -891,8 +893,11 @@ bool wxTopLevelWindowGTK::Show( bool show ) void wxTopLevelWindowGTK::ShowWithoutActivating() { - gtk_window_set_focus_on_map(GTK_WINDOW(m_widget), false); - Show(true); + if (!m_isShown) + { + gtk_window_set_focus_on_map(GTK_WINDOW(m_widget), false); + Show(true); + } } void wxTopLevelWindowGTK::Raise()