diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index e3fee8bcdf..91bf0a9e11 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -2210,6 +2210,12 @@ wxWindowGTK::~wxWindowGTK() // delete before the widgets to avoid a crash on solaris delete m_imData; + // avoid problem with GTK+ 2.18 where a frozen window causes the whole + // TLW to be frozen, and if the window is then destroyed, nothing ever + // gets painted again + if (IsFrozen()) + DoThaw(); + if (m_widget) { // Note that gtk_widget_destroy() does not destroy the widget, it just