From: Julian Smart Date: Tue, 18 Jun 2002 08:29:34 +0000 (+0000) Subject: Set the clear region to be the update region if the update X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/eb411b9eea6ad06d0fcd7695ec6346cbdf26a314 Set the clear region to be the update region if the update region is non-empty but the clear region is empty, because otherwise we're going to clear more than we repaint git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index eab8a8917f..2deaff54fe 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -3454,6 +3454,14 @@ void wxWindowGTK::GtkSendPaintEvents() else // if (!m_clearRegion.IsEmpty()) // always send an erase event { + // If the clear region is empty, and the update region isn't, + // then we're going to clear more than we repaint, + // so let's make sure the two regions are in sync. + if (m_clearRegion.IsEmpty() && !m_updateRegion.IsEmpty()) + { + m_clearRegion = m_updateRegion ; + } + wxWindowDC dc( (wxWindow*)this ); dc.SetClippingRegion( m_clearRegion ); diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index eab8a8917f..2deaff54fe 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -3454,6 +3454,14 @@ void wxWindowGTK::GtkSendPaintEvents() else // if (!m_clearRegion.IsEmpty()) // always send an erase event { + // If the clear region is empty, and the update region isn't, + // then we're going to clear more than we repaint, + // so let's make sure the two regions are in sync. + if (m_clearRegion.IsEmpty() && !m_updateRegion.IsEmpty()) + { + m_clearRegion = m_updateRegion ; + } + wxWindowDC dc( (wxWindow*)this ); dc.SetClippingRegion( m_clearRegion );