]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/msgdlg.cpp
Rearrange code to fix some problems
[wxWidgets.git] / src / gtk / msgdlg.cpp
index 58ed5548a471123803e3067ff1bc0a0c490b3b37..7202ba2a3249ba44c8857946c796fa18d5b84ff9 100644 (file)
@@ -79,7 +79,7 @@ void wxMessageDialog::GTKCreateMsgDialog()
     wxString message;
 #if GTK_CHECK_VERSION(2, 6, 0)
     bool needsExtMessage = false;
     wxString message;
 #if GTK_CHECK_VERSION(2, 6, 0)
     bool needsExtMessage = false;
-    if ( gtk_check_version(2, 4, 0) == NULL && !m_extendedMessage.empty() )
+    if ( gtk_check_version(2, 6, 0) == NULL && !m_extendedMessage.empty() )
     {
         message = m_message;
         needsExtMessage = true;
     {
         message = m_message;
         needsExtMessage = true;
@@ -137,6 +137,12 @@ void wxMessageDialog::GTKCreateMsgDialog()
 
 int wxMessageDialog::ShowModal()
 {
 
 int wxMessageDialog::ShowModal()
 {
+    // break the mouse capture as it would interfere with modal dialog (see
+    // wxDialog::ShowModal)
+    wxWindow * const win = wxWindow::GetCapture();
+    if ( win )
+        win->GTKReleaseMouseAndNotify();
+
     if ( !m_widget )
     {
         GTKCreateMsgDialog();
     if ( !m_widget )
     {
         GTKCreateMsgDialog();