rendered paste bodyFrom 8798a768f0d036f5a877dc70992ce8220ecc1e20 Mon Sep 17 00:00:00 2001From: Robert Bragg <robert@linux.intel.com>Date: Tue, 1 Jun 2010 16:54:34 +0100Subject: [PATCH] Make GLX_ARB_texture_rectangle an optional dependency--- src/compositor/mutter-shaped-texture.c | 4 ++++ src/compositor/mutter-shaped-texture.h | 2 ++ src/compositor/mutter-window.c | 2 ++ 3 files changed, 8 insertions(+), 0 deletions(-)diff --git a/src/compositor/mutter-shaped-texture.c b/src/compositor/mutter-shaped-texture.cindex 984374a..c432c49 100644--- a/src/compositor/mutter-shaped-texture.c+++ b/src/compositor/mutter-shaped-texture.c@@ -191,8 +191,10 @@ mutter_shaped_texture_dirty_mask (MutterShapedTexture *stex) cogl_texture_get_gl_texture (priv->mask_texture, &mask_gl_tex, &mask_gl_target); +#ifdef GL_ARB_texture_rectangle if (mask_gl_target == GL_TEXTURE_RECTANGLE_ARB) glDeleteTextures (1, &mask_gl_tex);+#endif cogl_handle_unref (priv->mask_texture); priv->mask_texture = COGL_INVALID_HANDLE;@@ -252,6 +254,7 @@ mutter_shaped_texture_ensure_mask (MutterShapedTexture *stex) memset (p, 255, x2 - x1); } +#ifdef GL_ARB_texture_rectangle cogl_texture_get_gl_texture (paint_tex, NULL, &paint_gl_target); if (paint_gl_target == GL_TEXTURE_RECTANGLE_ARB)@@ -276,6 +279,7 @@ mutter_shaped_texture_ensure_mask (MutterShapedTexture *stex) COGL_PIXEL_FORMAT_A_8); } else+#endif priv->mask_texture = cogl_texture_new_from_data (tex_width, tex_height, COGL_TEXTURE_NONE, COGL_PIXEL_FORMAT_A_8,diff --git a/src/compositor/mutter-shaped-texture.h b/src/compositor/mutter-shaped-texture.hindex 3310bc5..1b4e83a 100644--- a/src/compositor/mutter-shaped-texture.h+++ b/src/compositor/mutter-shaped-texture.h@@ -29,6 +29,8 @@ #include <clutter/clutter.h> #ifdef HAVE_GLX_TEXTURE_PIXMAP #include <clutter/glx/clutter-glx.h>+#else+#include <clutter/x11/clutter-x11.h> #endif /* HAVE_GLX_TEXTURE_PIXMAP */ #include <gdk/gdkregion.h>diff --git a/src/compositor/mutter-window.c b/src/compositor/mutter-window.cindex 7a1b3ce..ede2cbf 100644--- a/src/compositor/mutter-window.c+++ b/src/compositor/mutter-window.c@@ -381,9 +381,11 @@ mutter_window_constructed (GObject *object) { priv->actor = mutter_shaped_texture_new (); +#ifdef HAVE_GLX_TEXTURE_PIXMAP if (!clutter_glx_texture_pixmap_using_extension ( CLUTTER_GLX_TEXTURE_PIXMAP (priv->actor))) g_warning ("NOTE: Not using GLX TFP!\n");+#endif clutter_container_add_actor (CLUTTER_CONTAINER (self), priv->actor); -- 1.6.3.3