diff options
author | Adam Jackson <ajax@redhat.com> | 2012-05-09 17:49:04 -0400 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2012-05-09 17:49:04 -0400 |
commit | 0584516f4201a47a99f680404a5d635a613eb27c (patch) | |
tree | 38169858f1dc5ae8b5749d61831b5a0001376de8 /mutter-never-slice-shape-mask.patch | |
parent | 938500f8298016ee0e16f65b30fef1c302331d9b (diff) | |
download | mutter-0584516f4201a47a99f680404a5d635a613eb27c.tar.gz mutter-0584516f4201a47a99f680404a5d635a613eb27c.tar.xz mutter-0584516f4201a47a99f680404a5d635a613eb27c.zip |
mutter-never-slice-shape-mask.patch, mutter-use-cogl-texrect-api.patch:
Fix window texturing on hardware without ARB_texture_non_power_of_two
(#813648)
Diffstat (limited to 'mutter-never-slice-shape-mask.patch')
-rw-r--r-- | mutter-never-slice-shape-mask.patch | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/mutter-never-slice-shape-mask.patch b/mutter-never-slice-shape-mask.patch new file mode 100644 index 0000000..797fdde --- /dev/null +++ b/mutter-never-slice-shape-mask.patch @@ -0,0 +1,43 @@ +From a22859a64a60b38346ce7faabad6a9a48d7a8d9f Mon Sep 17 00:00:00 2001 +From: Robert Bragg <robert@linux.intel.com> +Date: Wed, 25 Apr 2012 00:48:19 +0000 +Subject: shaped-texture: never slice shape mask texture + +Since Cogl doesn't support multi-texturing with sliced textures and the +shape texture is combined with the texture-from-pixmap texture we need +to make sure we never construct a sliced mask texture. This patch simply +passes the COGL_TEXTURE_NO_SLICE flag to cogl_texture_from_data when +creating the shape mask texture. + +https://bugzilla.gnome.org/show_bug.cgi?id=674731 +--- +diff --git a/src/compositor/meta-shaped-texture.c b/src/compositor/meta-shaped-texture.c +index 07bd93c..182d23b 100644 +--- a/src/compositor/meta-shaped-texture.c ++++ b/src/compositor/meta-shaped-texture.c +@@ -313,12 +313,17 @@ meta_shaped_texture_ensure_mask (MetaShapedTexture *stex) + } + else + #endif /* GL_TEXTURE_RECTANGLE_ARB */ +- priv->mask_texture = cogl_texture_new_from_data (tex_width, tex_height, +- COGL_TEXTURE_NONE, +- COGL_PIXEL_FORMAT_A_8, +- COGL_PIXEL_FORMAT_ANY, +- stride, +- mask_data); ++ { ++ /* Note: we don't allow slicing for this texture because we ++ * need to use it with multi-texturing which doesn't support ++ * sliced textures */ ++ priv->mask_texture = cogl_texture_new_from_data (tex_width, tex_height, ++ COGL_TEXTURE_NO_SLICING, ++ COGL_PIXEL_FORMAT_A_8, ++ COGL_PIXEL_FORMAT_ANY, ++ stride, ++ mask_data); ++ } + + g_free (mask_data); + +-- +cgit v0.9.0.2 |