From: Robert Roebling Date: Mon, 2 Feb 2009 14:02:50 +0000 (+0000) Subject: The recent change to ::Refresh() (strangely) fails to invalidate e.g. a wxTreeCtrl... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/08bbdb08580c238689a22b6d55c32ac7b067b9cb The recent change to ::Refresh() (strangely) fails to invalidate e.g. a wxTreeCtrl in a wxDialog, revert the relevant part git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 6f2da8ab52..1864418244 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -3545,6 +3545,9 @@ void wxWindowGTK::Refresh(bool WXUNUSED(eraseBackground), else return; + if (!widget->window) + return; + if (rect == NULL) gtk_widget_queue_draw(widget); else @@ -3553,7 +3556,16 @@ void wxWindowGTK::Refresh(bool WXUNUSED(eraseBackground), if (GetLayoutDirection() == wxLayout_RightToLeft) x = GetClientSize().x - x - rect->width; +#if 0 gtk_widget_queue_draw_area(widget, x, rect->y, rect->width, rect->height); +#else + GdkRectangle r; + r.x = rect->x; + r.y = rect->y; + r.width = rect->width; + r.height = rect->height; + gdk_window_invalidate_rect( m_wxwindow->window, NULL, TRUE ); +#endif } }