[mutter] cogl: Remove always-set COGL_FEATURE_OFFSCREEN



commit cf107c89b8067dfc44afdea0e97b4681b73bd6ec
Author: Adam Jackson <ajax redhat com>
Date:   Thu Oct 17 18:32:00 2019 -0400

    cogl: Remove always-set COGL_FEATURE_OFFSCREEN
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/866

 clutter/clutter/clutter-feature.c                    | 3 +--
 cogl/cogl/cogl-types.h                               | 2 --
 cogl/cogl/driver/gl/gl/cogl-driver-gl.c              | 1 -
 cogl/cogl/driver/gl/gles/cogl-driver-gles.c          | 6 ------
 src/tests/clutter/conform/actor-offscreen-redirect.c | 3 ---
 src/tests/clutter/conform/texture-fbo.c              | 8 --------
 6 files changed, 1 insertion(+), 22 deletions(-)
---
diff --git a/clutter/clutter/clutter-feature.c b/clutter/clutter/clutter-feature.c
index 5741391ff..2848c0a9b 100644
--- a/clutter/clutter/clutter-feature.c
+++ b/clutter/clutter/clutter-feature.c
@@ -72,8 +72,7 @@ clutter_features_from_cogl (guint cogl_flags)
   
   clutter_flags |= CLUTTER_FEATURE_SHADERS_GLSL;
   
-  if (cogl_flags & COGL_FEATURE_OFFSCREEN)
-    clutter_flags |= CLUTTER_FEATURE_OFFSCREEN;
+  clutter_flags |= CLUTTER_FEATURE_OFFSCREEN;
   
   return clutter_flags;
 }
diff --git a/cogl/cogl/cogl-types.h b/cogl/cogl/cogl-types.h
index f19c4d9b4..c337f1e2b 100644
--- a/cogl/cogl/cogl-types.h
+++ b/cogl/cogl/cogl-types.h
@@ -114,7 +114,6 @@ typedef struct _CoglTextureVertex       CoglTextureVertex;
  * CoglFeatureFlags:
  * @COGL_FEATURE_TEXTURE_YUV: ycbcr conversion support
  * @COGL_FEATURE_TEXTURE_READ_PIXELS: glReadPixels() support
- * @COGL_FEATURE_OFFSCREEN: FBO support
  * @COGL_FEATURE_OFFSCREEN_MULTISAMPLE: Multisample support on FBOs
  * @COGL_FEATURE_FOUR_CLIP_PLANES: At least 4 clip planes available
  * @COGL_FEATURE_STENCIL_BUFFER: Stencil buffer support
@@ -137,7 +136,6 @@ typedef enum
 {
   COGL_FEATURE_TEXTURE_YUV            = (1 << 3),
   COGL_FEATURE_TEXTURE_READ_PIXELS    = (1 << 4),
-  COGL_FEATURE_OFFSCREEN              = (1 << 6),
   COGL_FEATURE_OFFSCREEN_MULTISAMPLE  = (1 << 7),
   COGL_FEATURE_FOUR_CLIP_PLANES       = (1 << 9),
   COGL_FEATURE_STENCIL_BUFFER         = (1 << 10),
diff --git a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
index d0e3e5091..80efe7ffa 100644
--- a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
+++ b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
@@ -415,7 +415,6 @@ _cogl_driver_update_features (CoglContext *ctx,
                    "Framebuffer objects are required to use the GL driver");
       return FALSE;
     }
-  flags |= COGL_FEATURE_OFFSCREEN;
   COGL_FLAGS_SET (private_features,
                   COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS,
                   TRUE);
diff --git a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c
index dfe17be4b..600a13a6e 100644
--- a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c
+++ b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c
@@ -301,18 +301,12 @@ _cogl_driver_update_features (CoglContext *context,
                                      gl_minor,
                                      gl_extensions);
 
-  flags |= COGL_FEATURE_OFFSCREEN;
   /* Note GLES 2 core doesn't support mipmaps for npot textures or
    * repeat modes other than CLAMP_TO_EDGE. */
 
   COGL_FLAGS_SET (private_features, COGL_PRIVATE_FEATURE_ANY_GL, TRUE);
   COGL_FLAGS_SET (private_features, COGL_PRIVATE_FEATURE_ALPHA_TEXTURES, TRUE);
 
-  if (context->glGenRenderbuffers)
-    {
-      flags |= COGL_FEATURE_OFFSCREEN;
-    }
-
   if (context->glBlitFramebuffer)
     COGL_FLAGS_SET (private_features,
                     COGL_PRIVATE_FEATURE_BLIT_FRAMEBUFFER, TRUE);
diff --git a/src/tests/clutter/conform/actor-offscreen-redirect.c 
b/src/tests/clutter/conform/actor-offscreen-redirect.c
index 368e041ad..0a7c2a3c1 100644
--- a/src/tests/clutter/conform/actor-offscreen-redirect.c
+++ b/src/tests/clutter/conform/actor-offscreen-redirect.c
@@ -314,9 +314,6 @@ actor_offscreen_redirect (void)
 {
   Data data = { 0 };
 
-  if (!cogl_features_available (COGL_FEATURE_OFFSCREEN))
-    return;
-
   data.stage = clutter_test_get_stage ();
   data.parent_container = clutter_actor_new ();
   data.container = g_object_new (foo_group_get_type (), NULL);
diff --git a/src/tests/clutter/conform/texture-fbo.c b/src/tests/clutter/conform/texture-fbo.c
index 4a30b383c..ac70ebc67 100644
--- a/src/tests/clutter/conform/texture-fbo.c
+++ b/src/tests/clutter/conform/texture-fbo.c
@@ -165,14 +165,6 @@ texture_fbo (TestConformSimpleFixture *fixture,
   ClutterActor *actor;
   int ypos = 0;
 
-  if (!cogl_features_available (COGL_FEATURE_OFFSCREEN))
-    {
-      if (g_test_verbose ())
-        g_print ("Offscreen buffers are not available, skipping.\n");
-
-      return;
-    }
-
   state.frame = 0;
 
   state.stage = clutter_stage_new ();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]