gsk: Rework GskRenderer and GskRenderNode semantics

Desktop / GNOME / GTK - Emmanuele Bassi [gnome.org] - 18 October 2016 05:29 UTC

This commit changes the way GskRenderer and GskRenderNode interact and are meant to be used.

GskRenderNode should represent a transient tree of rendering nodes, which are submitted to the GskRenderer at render time; this allows the renderer to take ownership of the render tree. Once the toolkit and application code have finished assembling it, the render tree ownership is transferred to the renderer.

074c77e gsk: Rework GskRenderer and GskRenderNode semantics
gsk/gskcairorenderer.c | 51 ++--
gsk/gskglrenderer.c | 292 +++++-----------------
gsk/gskrenderer.c | 575 +++++++++++---------------------------------
gsk/gskrenderer.h | 31 +--
gsk/gskrendererprivate.h | 23 +-
gsk/gskrendernode.c | 338 ++++++++------------------
gsk/gskrendernode.h | 9 +-
gsk/gskrendernodeprivate.h | 46 +---
tests/Makefile.am | 4 -
tests/testgskrenderer.c | 229 ------------------
10 files changed, 338 insertions(+), 1260 deletions(-)

Upstream: git.gnome.org


  • Share