gtk/gsk/gl
Alexander Larsson e14d2be1e8 gl renderer: Fix render node texture cache
We're caching two things, either a node itself being rendered, or a
parent storing a cached version of a child as rendered to an offscreen
the size and location of the parent.

If both the parent and child uses the cache this will cause a conflict in
the cache as it is currently use keying of a node pointer which will have
the same value for the node-as-itself and the child-node-of-the-parent.

We fix this by adding another part to the key "pointer_is_child" which means
we can have the same node pointer twice in the cache.

Additionally, in the child-is-rendered-offscreen case the offscreen
result actually depends on the position and size of the parent viewport,
so we need to store the parent bounds in that case.
2020-09-30 14:53:13 +02:00
..
glutilsprivate.h gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
gskgldriver.c gl renderer: Fix render node texture cache 2020-09-30 14:53:13 +02:00
gskgldriverprivate.h gl renderer: Fix render node texture cache 2020-09-30 14:53:13 +02:00
gskglglyphcache.c Correctly upload textures for GLES 2020-09-25 09:31:43 +02:00
gskglglyphcacheprivate.h Revert "Cache glyph textures in render nodes" 2019-10-22 07:16:41 -04:00
gskgliconcache.c Correctly upload textures for GLES 2020-09-25 09:31:43 +02:00
gskgliconcacheprivate.h gl: Slightly rework the icon cache api 2019-10-15 19:44:26 -04:00
gskglimage.c gl: Allow setting min/mag filter on textures 2019-06-04 23:00:01 +00:00
gskglimageprivate.h gl: Allow setting min/mag filter on textures 2019-06-04 23:00:01 +00:00
gskglnodesample.c Turn GskRenderNode into a derivable type 2020-04-08 15:40:15 +01:00
gskglnodesampleprivate.h gl renderer: Add NodeSample 2018-12-02 13:25:43 +01:00
gskglprofiler.c Fix detection of OpenGL 3.3 core GL_ARB_timer_query. 2020-02-14 05:41:01 +11:00
gskglprofilerprivate.h gsk: Move all gskgl* files into gl/ 2017-12-21 19:12:30 +01:00
gskglrenderer.c gl renderer: Fix render node texture cache 2020-09-30 14:53:13 +02:00
gskglrenderer.h gsk: Export gsk_gl_renderer_new() 2019-05-05 07:18:39 +02:00
gskglrendererprivate.h Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
gskglrenderops.c gl: Track the current uniform state for custom programs 2020-09-29 11:52:39 +02:00
gskglrenderopsprivate.h gl: Track the current uniform state for custom programs 2020-09-29 11:52:39 +02:00
gskglshaderbuilder.c Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
gskglshaderbuilderprivate.h Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
gskglshadowcache.c gl renderer: Draw outset shadows white 2020-01-18 08:49:52 +01:00
gskglshadowcacheprivate.h gl renderer: Draw outset shadows white 2020-01-18 08:49:52 +01:00
gskgltextureatlas.c gltextureatlas: Packing must succeed here 2020-01-07 17:27:18 +01:00
gskgltextureatlasprivate.h gl: Do less work to maintain caches 2019-10-11 20:42:24 -04:00
opbuffer.c Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
opbuffer.h Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
stb_rect_pack.c *: Fix spelling mistakes found by codespell 2020-08-21 15:29:34 +02:00
stb_rect_pack.h glglyphcache: Use stb_rect_pack for better glyph packing 2019-06-04 22:42:00 +00:00