diff options
author | Emmanuele Bassi <ebassi@gnome.org> | 2016-08-24 16:21:50 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@gnome.org> | 2016-10-18 11:49:15 +0100 |
commit | 6b3c0052fcc0d837ce31a8a14d097cfa0c7a0385 (patch) | |
tree | b6e74d41450dec363c071147ffcfd0f0bf7e38df /gsk/gskrendererprivate.h | |
parent | 13f7f5bdfca2158648b3650b30ac811f48ec6662 (diff) | |
download | gtk+-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/gskrendererprivate.h')
-rw-r--r-- | gsk/gskrendererprivate.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gsk/gskrendererprivate.h b/gsk/gskrendererprivate.h index d560d0183d..12671886f0 100644 --- a/gsk/gskrendererprivate.h +++ b/gsk/gskrendererprivate.h @@ -41,8 +41,7 @@ struct _GskRendererClass void (* unrealize) (GskRenderer *renderer); void (* render) (GskRenderer *renderer, - GskRenderNode *root, - GdkDrawingContext *context); + GskRenderNode *root); }; gboolean gsk_renderer_is_realized (GskRenderer *renderer); |