snapshot: "Inherit" from GdkSnapshot

This is a neat trick to get around the circularity between GDK, GSK and
GTK that we inherit with the GdkPaintable interface.

GdkPaintable uses GtkSnapshot
GtkSnapshot creates GskRenderNodes
GskRenderNodes use GdkTextures
GdkTexture will soon implement GdkPaintable

This causes a loop that spans GDK, GSK and GTK and this is the easiest
way to resolve it without breaking bindings (at least that's the idea).
This commit is contained in:
Benjamin Otte 2018-02-16 06:30:48 +01:00
parent 8f43d7e188
commit d4764cc89b
2 changed files with 2 additions and 2 deletions

View File

@ -80,7 +80,7 @@ struct _GtkSnapshotState {
} data;
};
struct _GtkSnapshot {
struct _GdkSnapshot {
int ref_count;
gboolean record_names;
GskRenderer *renderer;

View File

@ -39,7 +39,7 @@ typedef struct _GtkClipboard GtkClipboard;
typedef struct _GtkRequisition GtkRequisition;
typedef struct _GtkSelectionData GtkSelectionData;
typedef struct _GtkSettings GtkSettings;
typedef struct _GtkSnapshot GtkSnapshot;
typedef GdkSnapshot GtkSnapshot;
typedef struct _GtkStyleContext GtkStyleContext;
typedef struct _GtkTooltip GtkTooltip;
typedef struct _GtkWidget GtkWidget;