shaped-texture: Only mask alpha channel

We currently apply the mask texture to any channel, which means
elements drawn outside the actual decorations are blended with
gray. This should hardly matter in practice where shadows can
be expected to be some shade of gray, but let's still make sure
the odd theme with pink shadows or the like works correctly by
applying the alpha mask to the alpha channel only.

https://bugzilla.gnome.org/show_bug.cgi?id=744667
This commit is contained in:
Florian Müllner 2016-10-27 16:21:15 +02:00
parent d491063110
commit aae007193f

View File

@ -216,7 +216,8 @@ get_masked_pipeline (CoglContext *ctx)
{ {
template = cogl_pipeline_copy (get_base_pipeline (ctx)); template = cogl_pipeline_copy (get_base_pipeline (ctx));
cogl_pipeline_set_layer_combine (template, 1, cogl_pipeline_set_layer_combine (template, 1,
"RGBA = MODULATE (PREVIOUS, TEXTURE[A])", "RGB = REPLACE (PREVIOUS)"
"A = MODULATE (PREVIOUS, TEXTURE)",
NULL); NULL);
} }