[gtk+/wip/alexl/broadway4: 93/96] broadway: Handle texture gsd nodes



commit 4d1eca0d57b855b2a8d29d2076615938eca34ba9
Author: Alexander Larsson <alexl redhat com>
Date:   Wed Nov 22 18:24:20 2017 +0100

    broadway: Handle texture gsd nodes

 gsk/gskbroadwayrenderer.c |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/gsk/gskbroadwayrenderer.c b/gsk/gskbroadwayrenderer.c
index 0838a7a..ab62813 100644
--- a/gsk/gskbroadwayrenderer.c
+++ b/gsk/gskbroadwayrenderer.c
@@ -474,6 +474,24 @@ gsk_broadway_renderer_add_node (GskRenderer *self,
     case GSK_NOT_A_RENDER_NODE:
       g_assert_not_reached ();
       return;
+
+    case GSK_TEXTURE_NODE:
+      {
+        GdkTexture *texture = gsk_texture_node_get_texture (node);
+        guint32 texture_id;
+
+        g_ptr_array_add (node_textures, g_object_ref (texture)); /* Transfers ownership to node_textures */
+        texture_id = gdk_broadway_display_ensure_texture (display, texture);
+
+        add_uint32 (nodes, BROADWAY_NODE_TEXTURE);
+        add_float (nodes, node->bounds.origin.x);
+        add_float (nodes, node->bounds.origin.y);
+        add_float (nodes, gdk_texture_get_width (texture));
+        add_float (nodes, gdk_texture_get_height (texture));
+        add_uint32 (nodes, texture_id);
+      }
+      return;
+
     case GSK_CONTAINER_NODE:
       {
         guint i;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]