diff --git a/clutter/clutter/clutter-color-state.c b/clutter/clutter/clutter-color-state.c index a65a79776..1c207dcac 100644 --- a/clutter/clutter/clutter-color-state.c +++ b/clutter/clutter/clutter-color-state.c @@ -835,6 +835,9 @@ clutter_color_state_get_transform_snippet (ClutterColorState *color_state, snippet = cogl_snippet_new (COGL_SNIPPET_HOOK_FRAGMENT, globals_source->str, snippet_source->str); + cogl_snippet_set_capability (snippet, + CLUTTER_PIPELINE_CAPABILITY, + CLUTTER_PIPELINE_CAPABILITY_COLOR_STATE); g_hash_table_insert (snippet_cache, g_memdup2 (&cache_key, sizeof (cache_key)), g_object_ref (snippet)); diff --git a/clutter/clutter/clutter-main.c b/clutter/clutter/clutter-main.c index bbc620654..e6add3c5a 100644 --- a/clutter/clutter/clutter-main.c +++ b/clutter/clutter/clutter-main.c @@ -53,6 +53,8 @@ typedef struct GDestroyNotify notify; } ClutterThreadsDispatch; +G_DEFINE_QUARK (clutter_pipeline_capability, clutter_pipeline_capability) + /* main context */ static ClutterContext *ClutterCntx = NULL; diff --git a/clutter/clutter/clutter-main.h b/clutter/clutter/clutter-main.h index dc2b07f26..6f7a11302 100644 --- a/clutter/clutter/clutter-main.h +++ b/clutter/clutter/clutter-main.h @@ -90,6 +90,15 @@ typedef enum */ #define CLUTTER_PRIORITY_REDRAW (G_PRIORITY_HIGH_IDLE + 50) +typedef enum _ClutterPipelineCapability +{ + CLUTTER_PIPELINE_CAPABILITY_COLOR_STATE, +} ClutterPipelineCapability; + +#define CLUTTER_PIPELINE_CAPABILITY (clutter_pipeline_capability_quark ()) +CLUTTER_EXPORT +GQuark clutter_pipeline_capability_quark (void); + CLUTTER_EXPORT void clutter_stage_handle_event (ClutterStage *stage, ClutterEvent *event);