gtk2/gsk
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
..
broadway Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
gl gl renderer: Fix render node texture cache 2020-09-30 14:53:13 +02:00
resources Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
vulkan Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00
gen-gsk-gresources-xml.py meson: Reduce useless relinking on reconfigure 2020-04-03 18:41:55 +05:30
gsk-autocleanup.h gsk: Add GskTransform autocleanup definition 2020-05-08 09:14:55 +02:00
gsk.h Add GskGLShaderNode and GskGLShader 2020-09-29 09:51:16 +02:00
gskcairoblur.c Replace "gdouble" with "double" 2020-07-25 00:47:36 +02:00
gskcairoblurprivate.h gsk: Add GskShadowNode 2016-12-20 18:01:12 +01:00
gskcairorenderer.c gsk: Export Cairo renderer 2019-05-05 07:18:39 +02:00
gskcairorenderer.h gsk: Export Cairo renderer 2019-05-05 07:18:39 +02:00
gskdebug.c gsk: Remove an unused debug flag 2020-07-20 07:03:08 -04:00
gskdebugprivate.h gsk: Remove an unused debug flag 2020-07-20 07:03:08 -04:00
gskdiff.c diff: Allow aborting a diff 2018-04-05 14:56:38 +02:00
gskdiffprivate.h diff: Allow aborting a diff 2018-04-05 14:56:38 +02:00
gskenums.h Add GskGLShaderNode and GskGLShader 2020-09-29 09:51:16 +02:00
gskenumtypes.c.template Use @basename@ in enumeration type templates 2019-02-04 14:02:45 +01:00
gskenumtypes.h.template Use @basename@ in enumeration type templates 2019-02-04 14:02:45 +01:00
gskglshader.c gsk: Add some more shader docs 2020-09-29 14:44:31 -04:00
gskglshader.h gsk: Add some more shader docs 2020-09-29 14:44:31 -04:00
gskglshaderprivate.h Add GskGLShaderNode and GskGLShader 2020-09-29 09:51:16 +02:00
gskprivate.c More work on text nodes 2017-09-10 14:36:26 -04:00
gskprivate.h Add an api to get the vertex data for a render pass 2017-09-28 08:39:22 -04:00
gskprofiler.c Convert all profiler times from nsec to usec 2020-02-12 10:44:17 +01:00
gskprofilerprivate.h gsk: Add some more profiler apis 2019-05-07 09:37:59 -07:00
gskrenderer.c gsk: Complain if we fail to realize a renderer 2020-09-07 11:18:45 -04:00
gskrenderer.h Use a single compilation symbol 2019-11-27 13:33:43 +00:00
gskrendererprivate.h renderer: Make gsk_renderer_is_realized() public 2019-03-19 08:47:54 +01:00
gskrendernode.c Replace "gchar" with "char" 2020-07-25 00:47:36 +02:00
gskrendernode.h Add GskGLShaderNode and GskGLShader 2020-09-29 09:51:16 +02:00
gskrendernodeimpl.c gsk: Document radial gradient api 2020-09-29 07:04:07 -04:00
gskrendernodeparser.c Add GskGLShaderNode and GskGLShader 2020-09-29 09:51:16 +02:00
gskrendernodeparserprivate.h rendernodeparser: Skip root node when it's a container 2019-05-21 06:43:59 +02:00
gskrendernodeprivate.h Add GskGLShaderNode and GskGLShader 2020-09-29 09:51:16 +02:00
gskroundedrect.c Fix minor typos 2020-06-18 10:47:16 +03:00
gskroundedrect.h Fix minor typos 2020-06-18 10:47:16 +03:00
gskroundedrectprivate.h Add pure and const annotations to various functions 2020-01-26 18:21:07 +01:00
gsktransform.c gsk: Normalize when transforming bounds 2020-09-28 11:34:16 -04:00
gsktransform.h GskTransform: Add gsk_transform_transform_point() 2020-01-24 06:19:12 +01:00
gsktransformprivate.h Add gsk_matrix_transform_rect 2020-09-04 13:15:21 -04:00
gsktypes.h Use a single compilation symbol 2019-11-27 13:33:43 +00:00
meson.build Support GLShaderNode in backends 2020-09-29 09:51:16 +02:00