2008-06-27 Matthew Allum <mallum@openedhand.com>

* clutter/cogl/gl/cogl.c:
        Temp workaround for 10.4 ATI card OSX folks, see #929
        (Tommi Komulainen)

        Bug 998 - clutter always captures X input events

* clutter/eglx/clutter-stage-egl.c:
        * clutter/glx/clutter-stage-glx.c:
When we disable X event retrival, dont still select for window
events.
This commit is contained in:
Matthew Allum 2008-06-27 23:02:30 +00:00
parent cbd77008ff
commit 2666778c26

View File

@ -840,6 +840,32 @@ cogl_setup_viewport (guint width,
GE( glTranslatef (0.0f, -1.0 * height, 0.0f) ); GE( glTranslatef (0.0f, -1.0 * height, 0.0f) );
} }
#ifdef HAVE_CLUTTER_OSX
static gboolean
really_enable_npot (void)
{
/* OSX backend + ATI Radeon X1600 + NPOT texture + GL_REPEAT seems to crash
* http://bugzilla.openedhand.com/show_bug.cgi?id=929
*
* Temporary workaround until post 0.8 we rejig the features set up a
* little to allow the backend to overide.
*/
const char *gl_renderer;
const char *env_string;
/* Regardless of hardware, allow user to decide. */
env_string = g_getenv ("COGL_ENABLE_NPOT");
if (env_string != NULL)
return env_string[0] == '1';
gl_renderer = (char*)glGetString (GL_RENDERER);
if (strstr (gl_renderer, "ATI Radeon X1600") != NULL)
return FALSE;
return TRUE;
}
#endif
static void static void
_cogl_features_init () _cogl_features_init ()
{ {
@ -855,6 +881,9 @@ _cogl_features_init ()
if (cogl_check_extension ("GL_ARB_texture_non_power_of_two", gl_extensions)) if (cogl_check_extension ("GL_ARB_texture_non_power_of_two", gl_extensions))
{ {
#ifdef HAVE_CLUTTER_OSX
if (really_enable_npot ())
#endif
flags |= COGL_FEATURE_TEXTURE_NPOT; flags |= COGL_FEATURE_TEXTURE_NPOT;
} }