summaryrefslogtreecommitdiff
path: root/gsk/gskcairorenderer.c
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2016-08-24 16:21:50 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2016-10-18 11:49:15 +0100
commit6b3c0052fcc0d837ce31a8a14d097cfa0c7a0385 (patch)
treeb6e74d41450dec363c071147ffcfd0f0bf7e38df /gsk/gskcairorenderer.c
parent13f7f5bdfca2158648b3650b30ac811f48ec6662 (diff)
downloadgtk+-6b3c0052fcc0d837ce31a8a14d097cfa0c7a0385.tar.gz
gsk: Make GskRenderer.render() drawing context-agnostic
We're going to need to allow rendering on a specific cairo_t in order to implement fallback code paths inside GTK; this means that there will be times when we have a transient GskRenderer instance that does not have a GdkDrawingContext to draw on. Instead of adding a new render() implementation for those cases and then decide which one to use, we can remove the drawing context argument from the virtual function itself, and allow using a NULL GdkDrawingContext when calling gsk_renderer_render(). A later commit will add a generic function to create a transient GskRenderer with a cairo_t attached to it. Renderers inside GSK will have to check whether we have access to a GdkDrawingContext, in which case we're going to use it; or if we have access to a cairo_t and a window.
Diffstat (limited to 'gsk/gskcairorenderer.c')
-rw-r--r--gsk/gskcairorenderer.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gsk/gskcairorenderer.c b/gsk/gskcairorenderer.c
index d0766c7450..282bb0f416 100644
--- a/gsk/gskcairorenderer.c
+++ b/gsk/gskcairorenderer.c
@@ -123,11 +123,11 @@ gsk_cairo_renderer_render_node (GskCairoRenderer *self,
}
static void
-gsk_cairo_renderer_render (GskRenderer *renderer,
- GskRenderNode *root,
- GdkDrawingContext *context)
+gsk_cairo_renderer_render (GskRenderer *renderer,
+ GskRenderNode *root)
{
GskCairoRenderer *self = GSK_CAIRO_RENDERER (renderer);
+ GdkDrawingContext *context = gsk_renderer_get_drawing_context (renderer);
cairo_t *cr = gdk_drawing_context_get_cairo_context (context);
gsk_renderer_get_viewport (renderer, &self->viewport);