From: Benjamin Otte Date: Wed, 20 Oct 2021 18:30:43 +0000 (+0200) Subject: node-editor: Create renderers surfaceless X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~19^2~5^2~220^2~1 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=869d2f281a44d2b9db5f58ec0f7d08df6fb8de0e;p=gtk4.git node-editor: Create renderers surfaceless --- diff --git a/demos/node-editor/node-editor-window.c b/demos/node-editor/node-editor-window.c index 4a22a0b9d8..995d2969f6 100644 --- a/demos/node-editor/node-editor-window.c +++ b/demos/node-editor/node-editor-window.c @@ -646,7 +646,6 @@ create_cairo_texture (NodeEditorWindow *self) GskRenderer *renderer; GskRenderNode *node; GdkTexture *texture; - GdkSurface *surface; paintable = gtk_picture_get_paintable (GTK_PICTURE (self->picture)); if (paintable == NULL || @@ -659,9 +658,8 @@ create_cairo_texture (NodeEditorWindow *self) if (node == NULL) return NULL; - surface = gtk_native_get_surface (gtk_widget_get_native (GTK_WIDGET (self))); renderer = gsk_cairo_renderer_new (); - gsk_renderer_realize (renderer, surface, NULL); + gsk_renderer_realize (renderer, NULL, NULL); texture = gsk_renderer_render_texture (renderer, node, NULL); gsk_render_node_unref (node); @@ -839,16 +837,18 @@ node_editor_window_add_renderer (NodeEditorWindow *self, GskRenderer *renderer, const char *description) { - GdkSurface *surface; GdkPaintable *paintable; - surface = gtk_native_get_surface (GTK_NATIVE (self)); - g_assert (surface != NULL); - - if (renderer != NULL && !gsk_renderer_realize (renderer, surface, NULL)) + if (!gsk_renderer_realize (renderer, NULL, NULL)) { - g_object_unref (renderer); - return; + GdkSurface *surface = gtk_native_get_surface (GTK_NATIVE (self)); + g_assert (surface != NULL); + + if (!gsk_renderer_realize (renderer, surface, NULL)) + { + g_object_unref (renderer); + return; + } } paintable = gtk_renderer_paintable_new (renderer, gtk_picture_get_paintable (GTK_PICTURE (self->picture)));