Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=766f71cdbd772704b8d4f1e881f6c8dca3bfd114

commit 766f71cdbd772704b8d4f1e881f6c8dca3bfd114
Author: bouleetbil <bouleet...@frogdev.info>
Date:   Sat Dec 3 18:06:14 2011 +0100

clutter-1.8.2-2-i686
*backport patch

diff --git a/source/xlib/clutter/FrugalBuild b/source/xlib/clutter/FrugalBuild
index 113979d..d012bdc 100644
--- a/source/xlib/clutter/FrugalBuild
+++ b/source/xlib/clutter/FrugalBuild
@@ -4,7 +4,7 @@

pkgname=clutter
pkgver=1.8.2
-pkgrel=1
+pkgrel=2
pkgdesc="A GObject based library for creating fast, visually rich graphical 
user interfaces."
depends=('libxdamage' 'libxcomposite' 'libgl' 'freetype2' 'libxau>=1.0.4' 
'libxdmcp' \
'gdk-pixbuf2' 'libxml2>=2.7.8' 'atk' 'pango' 'cairo' 'json-glib' 'cogl>=1.8.0')
@@ -14,7 +14,9 @@ groups=('xlib')
replaces=('clutter-cairo')
provides=('clutter-cairo')
unset MAKEFLAGS
-Fconfopts="$Fconfopts --with-imagebackend=gdk-pixbuf --enable-xinput"
-sha1sums=('5e662e848c1d28a67dd3a65895ba3f1f98b07d41')
+Fconfopts="$Fconfopts  --enable-introspection"
+source=($source faillback.diff)
+sha1sums=('5e662e848c1d28a67dd3a65895ba3f1f98b07d41' \
+          '311d6a59366c1264492e5a22df5ccdb4091e2015')

# optimization OK
diff --git a/source/xlib/clutter/faillback.diff 
b/source/xlib/clutter/faillback.diff
new file mode 100644
index 0000000..1d59c55
--- /dev/null
+++ b/source/xlib/clutter/faillback.diff
@@ -0,0 +1,59 @@
+From f05432d57e5e980d0841fd6c13a7f886a46107fe Mon Sep 17 00:00:00 2001
+From: Robert Bragg <rob...@linux.intel.com>
+Date: Tue, 01 Nov 2011 13:42:40 +0000
+Subject: cogl: fallback to non-transparent stages if unsupported
+
+If our check of the CoglOnscreenTemplate during initialization fails
+then we disable the request for an alpha component in the swap chain and
+try the check again.
+
+Reviewed-by: Neil Roberts <n...@linux.intel.com>
+Reviewed-by: Emmanuele Bassi <eba...@linux.intel.com>
+---
+diff --git a/clutter/cogl/clutter-backend-cogl.c 
b/clutter/cogl/clutter-backend-cogl.c
+index 1ca8850..1343dd1 100644
+--- a/clutter/cogl/clutter-backend-cogl.c
++++ b/clutter/cogl/clutter-backend-cogl.c
+@@ -296,6 +296,7 @@ clutter_backend_cogl_create_context (ClutterBackend  
*backend,
+ #endif
+   CoglSwapChain *swap_chain = NULL;
+   CoglOnscreenTemplate *onscreen_template = NULL;
++  gboolean status;
+
+   if (backend->cogl_context)
+     return TRUE;
+@@ -325,9 +326,28 @@ clutter_backend_cogl_create_context (ClutterBackend  
*backend,
+    * Conceptually should we be able to check an onscreen_template
+    * without more details about the CoglDisplay configuration?
+    */
+-  if (!cogl_renderer_check_onscreen_template (backend->cogl_renderer,
+-                                              onscreen_template,
+-                                              error))
++  status = cogl_renderer_check_onscreen_template (backend->cogl_renderer,
++                                                  onscreen_template,
++                                                  error);
++#ifdef COGL_HAS_XLIB_SUPPORT
++  if (!status && clutter_x11_get_use_argb_visual ())
++    {
++      g_clear_error (error);
++      /* It's possible that the current renderer doesn't support transparency
++       * in a swap_chain so lets see if we can fallback to not having any
++       * transparency...
++       *
++       * XXX: It might be nice to have a CoglRenderer feature we could
++       * explicitly check for ahead of time.
++       */
++      cogl_swap_chain_set_has_alpha (swap_chain, FALSE);
++      status = cogl_renderer_check_onscreen_template (backend->cogl_renderer,
++                                                      onscreen_template,
++                                                      error);
++    }
++#endif
++
++  if (!status)
+     goto error;
+
+   backend->cogl_display = cogl_display_new (backend->cogl_renderer,
+--
+cgit v0.9.0.2
+
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to