X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b4bee866f35b2e93e50cbcbbbe4caee974ee798f..117082d17b73a920f22af12cd55315d1147ccd99:/src/gtk1/window.cpp diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index ba648e96bf..74e06e0af0 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -46,10 +46,13 @@ #include #include #include -#include - #include +#include +#include + +#include "wx/gtk/win_gtk.h" + //----------------------------------------------------------------------------- // documentation on internals //----------------------------------------------------------------------------- @@ -621,7 +624,7 @@ static int gtk_window_expose_callback( GtkWidget *widget, GdkEventExpose *gdk_ev wxapp_install_idle_handler(); /* - if (win->GetName() == wxT("status_line")) + if (win->GetName() == wxT("panel")) { wxPrintf( wxT("OnExpose from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) @@ -721,7 +724,7 @@ static void gtk_window_draw_callback( GtkWidget *widget, GdkRectangle *rect, wxW wxapp_install_idle_handler(); /* - if (win->GetName() == wxT("status_line")) + if (win->GetName() == wxT("panel")) { wxPrintf( wxT("OnDraw from ") ); if (win->GetClassInfo() && win->GetClassInfo()->GetClassName()) @@ -737,6 +740,7 @@ static void gtk_window_draw_callback( GtkWidget *widget, GdkRectangle *rect, wxW if (!win->m_queuedFullRedraw) { + if (!(GTK_WIDGET_APP_PAINTABLE (widget)) && (pizza->clear_on_draw)) { @@ -2571,8 +2575,14 @@ void wxWindow::OnInternalIdle() the actual size of window, in which case all expose events that resulted from resizing the window have been sent (and discarded) and we can now do our full redraw and switch on expose event handling again. */ - - if ((m_width == m_widget->allocation.width) && (m_height == m_widget->allocation.height)) + + bool child_already_resized = FALSE; + if (m_isFrame) + child_already_resized = gtk_pizza_child_resized( GTK_PIZZA(m_wxwindow->parent), m_wxwindow ); + else + child_already_resized = gtk_pizza_child_resized( GTK_PIZZA(m_widget->parent), m_widget ); + + if (child_already_resized) { m_queuedFullRedraw = FALSE; m_updateRegion.Clear();