vulkan: pass the context when creating a glyph cache
authorMatthias Clasen <mclasen@redhat.com>
Wed, 20 Sep 2017 14:01:58 +0000 (10:01 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Thu, 21 Sep 2017 03:26:14 +0000 (23:26 -0400)
gsk/gskvulkanglyphcache.c
gsk/gskvulkanglyphcacheprivate.h
gsk/gskvulkanrenderer.c

index 69181f6c9c8d3d7805664c512ee56e68783a9686..bd5756df39f314d8a2fddd295374eb36803ae306 100644 (file)
@@ -19,6 +19,8 @@ typedef struct {
 struct _GskVulkanGlyphCache {
   GObject parent_instance;
 
+  GdkVulkanContext *vulkan;
+
   GHashTable *hash_table;
   GPtrArray *atlases;
 };
@@ -224,9 +226,14 @@ add_to_cache (GskVulkanGlyphCache  *cache,
 }
 
 GskVulkanGlyphCache *
-gsk_vulkan_glyph_cache_new (void)
+gsk_vulkan_glyph_cache_new (GdkVulkanContext *vulkan)
 {
-  return GSK_VULKAN_GLYPH_CACHE (g_object_new (GSK_TYPE_VULKAN_GLYPH_CACHE, NULL));
+  GskVulkanGlyphCache *cache;
+
+  cache = GSK_VULKAN_GLYPH_CACHE (g_object_new (GSK_TYPE_VULKAN_GLYPH_CACHE, NULL));
+  cache->vulkan = vulkan;
+
+  return cache;
 }
 
 GskVulkanCachedGlyph *
index 9c2e61f414d7d63f01f6d4ee173801d12e119c05..56866851f14126df2fe85d630c11a0556184642d 100644 (file)
@@ -11,7 +11,7 @@ G_BEGIN_DECLS
 
 G_DECLARE_FINAL_TYPE(GskVulkanGlyphCache, gsk_vulkan_glyph_cache, GSK, VULKAN_GLYPH_CACHE, GObject)
 
-GskVulkanGlyphCache  *gsk_vulkan_glyph_cache_new            (void);
+GskVulkanGlyphCache  *gsk_vulkan_glyph_cache_new            (GdkVulkanContext *vulkan);
 
 GskVulkanImage *     gsk_vulkan_glyph_cache_get_glyph_image (GskVulkanGlyphCache *cache,
                                                              GskVulkanUploader   *uploader,
index dda6c08d4f71217e4eccf2117e61b8c9cc4c8e97..2325887c84108410826e8515d2fc60f235ef7493 100644 (file)
@@ -137,7 +137,7 @@ gsk_vulkan_renderer_realize (GskRenderer  *renderer,
 
   self->render = gsk_vulkan_render_new (renderer, self->vulkan);
 
-  self->glyph_cache = gsk_vulkan_glyph_cache_new ();
+  self->glyph_cache = gsk_vulkan_glyph_cache_new (self->vulkan);
 
   return TRUE;
 }