summaryrefslogtreecommitdiff
path: root/gsk/gskrendernodeprivate.h
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2019-10-15 00:14:43 -0400
committerMatthias Clasen <mclasen@redhat.com>2019-10-15 19:44:26 -0400
commitc5af4638434e39a0c224afb62252caed233c2acb (patch)
tree8fa457979f45d80eaf0739411d561b1d148d9f9b /gsk/gskrendernodeprivate.h
parent49748c9c231d3c2d6d2f6b4d67186f6396e1fb30 (diff)
downloadgtk+-c5af4638434e39a0c224afb62252caed233c2acb.tar.gz
Cache glyph textures in render nodes
This is a quick implementation that avoids many glyph cache lookups. We keep an array of direct pointers in the text render node, and throw those cached pointers away whenever any atlases have been dropped (since that may invalidate the cached glyphs).
Diffstat (limited to 'gsk/gskrendernodeprivate.h')
-rw-r--r--gsk/gskrendernodeprivate.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gsk/gskrendernodeprivate.h b/gsk/gskrendernodeprivate.h
index 2ced79738b..f2fe034444 100644
--- a/gsk/gskrendernodeprivate.h
+++ b/gsk/gskrendernodeprivate.h
@@ -46,6 +46,10 @@ void gsk_render_node_diff (GskRenderNode *nod
void gsk_render_node_diff_impossible (GskRenderNode *node1,
GskRenderNode *node2,
cairo_region_t *region);
+void gsk_text_node_set_render_data (GskRenderNode *node,
+ gpointer data);
+gpointer gsk_text_node_get_render_data (GskRenderNode *node);
+
G_END_DECLS