From e933302ae48a40dd23497b1786772f2b83a2833d Mon Sep 17 00:00:00 2001 From: "Jasper St. Pierre" Date: Mon, 1 Sep 2014 14:05:14 -0700 Subject: [PATCH] shell-glsl-quad: Provide a paint volume To prevent from falling back to the slow path of doing a full-stage repaint every time. --- src/shell-glsl-quad.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/shell-glsl-quad.c b/src/shell-glsl-quad.c index c37f73838..b24f0ce80 100644 --- a/src/shell-glsl-quad.c +++ b/src/shell-glsl-quad.c @@ -23,6 +23,13 @@ struct _ShellGLSLQuadPrivate CoglPipeline *pipeline; }; +static gboolean +shell_glsl_quad_get_paint_volume (ClutterActor *actor, + ClutterPaintVolume *volume) +{ + return clutter_paint_volume_set_from_allocation (volume, actor); +} + static void shell_glsl_quad_paint (ClutterActor *actor) { @@ -151,6 +158,7 @@ shell_glsl_quad_class_init (ShellGLSLQuadClass *klass) gobject_class->constructed = shell_glsl_quad_constructed; gobject_class->dispose = shell_glsl_quad_dispose; + actor_class->get_paint_volume = shell_glsl_quad_get_paint_volume; actor_class->paint = shell_glsl_quad_paint; g_type_class_add_private (klass, sizeof (ShellGLSLQuadPrivate));