Fix poedit regression in -29 - add paint clipping region patch (#1396747)
- Add patch to change ~wxPGChoicesData from private to protectedepel8
parent
095c4c4b53
commit
fe5a6f06ce
@ -0,0 +1,40 @@
|
||||
From cd8811bf142172c4920ba13a685472ceb405ef78 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Cornett <paulcor@users.noreply.github.com>
|
||||
Date: Thu, 3 Nov 2016 09:14:30 -0700
|
||||
Subject: [PATCH] Fix paint clipping region with GTK+ >= 3.20
|
||||
|
||||
Apparently the clip is no longer set properly. Fixes wxDC::Clear() overwriting
|
||||
areas outside the window. Problem can be seen in the Audacity toolbars.
|
||||
|
||||
(cherry picked from commit bca7313499c11a6d7fecd2baa355ac09fd3ac83b)
|
||||
---
|
||||
src/gtk/window.cpp | 14 +++++++++++++-
|
||||
1 file changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp
|
||||
index 41fffb4..96789de 100644
|
||||
--- a/src/gtk/window.cpp
|
||||
+++ b/src/gtk/window.cpp
|
||||
@@ -4099,9 +4099,21 @@ void wxWindowGTK::GTKSendPaintEvents(const GdkRegion* region)
|
||||
#endif
|
||||
{
|
||||
#ifdef __WXGTK3__
|
||||
- m_paintContext = cr;
|
||||
+ {
|
||||
+ cairo_region_t* region = gdk_window_get_clip_region(gtk_widget_get_window(m_wxwindow));
|
||||
+ cairo_rectangle_int_t rect;
|
||||
+ cairo_region_get_extents(region, &rect);
|
||||
+ cairo_region_destroy(region);
|
||||
+ cairo_rectangle(cr, rect.x, rect.y, rect.width, rect.height);
|
||||
+ cairo_clip(cr);
|
||||
+ }
|
||||
double x1, y1, x2, y2;
|
||||
cairo_clip_extents(cr, &x1, &y1, &x2, &y2);
|
||||
+
|
||||
+ if (x1 >= x2 || y1 >= y2)
|
||||
+ return;
|
||||
+
|
||||
+ m_paintContext = cr;
|
||||
m_updateRegion = wxRegion(int(x1), int(y1), int(x2 - x1), int(y2 - y1));
|
||||
#else // !__WXGTK3__
|
||||
m_updateRegion = wxRegion(region);
|
@ -0,0 +1,21 @@
|
||||
From dcc23ceba8e1dba828e8b3e4633ac77acaad7562 Mon Sep 17 00:00:00 2001
|
||||
From: Robin Dunn <robin@alldunn.com>
|
||||
Date: Thu, 5 Mar 2015 15:14:23 -0800
|
||||
Subject: [PATCH] Change ~wxPGChoicesData from private to protected
|
||||
|
||||
---
|
||||
include/wx/propgrid/property.h | 1 +
|
||||
interface/wx/propgrid/property.h | 3 +++
|
||||
2 files changed, 4 insertions(+)
|
||||
|
||||
diff --git a/include/wx/propgrid/property.h b/include/wx/propgrid/property.h
|
||||
index bc61848..ab1439d 100644
|
||||
--- a/include/wx/propgrid/property.h
|
||||
+++ b/include/wx/propgrid/property.h
|
||||
@@ -803,6 +803,7 @@ class WXDLLIMPEXP_PROPGRID wxPGChoicesData : public wxObjectRefData
|
||||
private:
|
||||
wxVector<wxPGChoiceEntry> m_items;
|
||||
|
||||
+protected:
|
||||
virtual ~wxPGChoicesData();
|
||||
};
|
Loading…
Reference in new issue