mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-10 02:40:11 +00:00
32625381fa
The new renderers don't support them due to the required complexity of integrating them with Vulkan and the assumptions those nodes make about the renderer (the GL renderer exports its internal APIs into the GLShader). There haven't been any complaints that I'm aware of since 4.14 was released where the default renderer does not support the nodes, so usage in public seems to be close to nonexistant. The 2 uses I know of were workarounds about missing features in GTK that have stopped since GTK now supports them: 1. GStreamer used in to do premultiplication when the old GL renderer did not do so in hardware but on the CPU. 2. Adwaita used it for masking before the mask node wa added in 4.10.
25 lines
863 B
C
25 lines
863 B
C
#pragma once
|
|
|
|
#include <gtk/gtk.h>
|
|
|
|
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
#define GTK_TYPE_SHADER_STACK (gtk_shader_stack_get_type ())
|
|
G_DECLARE_FINAL_TYPE (GtkShaderStack, gtk_shader_stack, GTK, SHADER_STACK, GtkWidget)
|
|
|
|
GtkWidget * gtk_shader_stack_new (void);
|
|
void gtk_shader_stack_set_shader (GtkShaderStack *self,
|
|
GskGLShader *shader);
|
|
void gtk_shader_stack_add_child (GtkShaderStack *self,
|
|
GtkWidget *child);
|
|
void gtk_shader_stack_transition (GtkShaderStack *self,
|
|
gboolean forward);
|
|
void gtk_shader_stack_set_active (GtkShaderStack *self,
|
|
int index);
|
|
|
|
G_END_DECLS
|
|
|
|
G_GNUC_END_IGNORE_DEPRECATIONS
|