summaryrefslogtreecommitdiff
path: root/libs/gtkmm2ext/cairo_widget.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-02-12 22:57:46 +0100
committerRobin Gareus <robin@gareus.org>2016-02-12 22:57:46 +0100
commit4a9ffee48632a9ca9241b03a8e9b20cff229c423 (patch)
tree2dfa200e4df2ef074b9d13eaa5af1f4c017a09a9 /libs/gtkmm2ext/cairo_widget.cc
parent88bb11f27ebe291e5019f8427a249349f4f8067a (diff)
Allow partial CairoWidget exposure
Diffstat (limited to 'libs/gtkmm2ext/cairo_widget.cc')
-rw-r--r--libs/gtkmm2ext/cairo_widget.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/gtkmm2ext/cairo_widget.cc b/libs/gtkmm2ext/cairo_widget.cc
index a597a7e29d..0f34a3ffdb 100644
--- a/libs/gtkmm2ext/cairo_widget.cc
+++ b/libs/gtkmm2ext/cairo_widget.cc
@@ -230,10 +230,14 @@ CairoWidget::on_expose_event (GdkEventExpose *ev)
*/
void
-CairoWidget::set_dirty ()
+CairoWidget::set_dirty (cairo_rectangle_t *area)
{
ENSURE_GUI_THREAD (*this, &CairoWidget::set_dirty);
- queue_draw ();
+ if (!area) {
+ queue_draw ();
+ } else {
+ queue_draw_area (area->x, area->y, area->width, area->height);
+ }
}
/** Handle a size allocation.