[gtk+/wip/ebassi/gl-context-realize: 3/8] gl: Drop OpenGL legacy profile
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/ebassi/gl-context-realize: 3/8] gl: Drop OpenGL legacy profile
- Date: Mon, 9 Feb 2015 15:41:55 +0000 (UTC)
commit 8846a7002c1cfd9a13ef97304c31a9a874b9e77c
Author: Emmanuele Bassi <ebassi gnome org>
Date: Wed Jan 28 19:04:22 2015 +0000
gl: Drop OpenGL legacy profile
We simply don't want to care about legacy OpenGL.
All supported platforms also have support for OpenGL ≥ 3.2; it would
complicate the internal code; and would force us to use legacy GL
contexts internally if the first context created by the user is a legacy
GL context, and disable creation of core-3.2 contexts after that.
We will need to fix all our code examples to use the Core 3.2 profile.
https://bugzilla.gnome.org/show_bug.cgi?id=741946
gdk/gdkglcontext.c | 12 +-----------
gdk/gdktypes.h | 20 +++++++++++++++-----
gdk/gdkwindow.c | 14 +-------------
gdk/x11/gdkglcontext-x11.c | 6 +-----
4 files changed, 18 insertions(+), 34 deletions(-)
---
diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c
index 55ee9f1..3ffaf8f 100644
--- a/gdk/gdkglcontext.c
+++ b/gdk/gdkglcontext.c
@@ -553,11 +553,6 @@ gdk_gl_context_get_required_version (GdkGLContext *context,
switch (priv->profile)
{
case GDK_GL_PROFILE_DEFAULT:
- case GDK_GL_PROFILE_LEGACY:
- if (major != NULL)
- *major = 1;
- break;
-
case GDK_GL_PROFILE_3_2_CORE:
if (major != NULL)
*major = 3;
@@ -572,11 +567,6 @@ gdk_gl_context_get_required_version (GdkGLContext *context,
switch (priv->profile)
{
case GDK_GL_PROFILE_DEFAULT:
- case GDK_GL_PROFILE_LEGACY:
- if (minor != NULL)
- *minor = 0;
- break;
-
case GDK_GL_PROFILE_3_2_CORE:
if (minor != NULL)
*minor = 2;
@@ -740,7 +730,7 @@ gdk_gl_context_get_profile (GdkGLContext *context)
{
GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context);
- g_return_val_if_fail (GDK_IS_GL_CONTEXT (context), GDK_GL_PROFILE_LEGACY);
+ g_return_val_if_fail (GDK_IS_GL_CONTEXT (context), GDK_GL_PROFILE_DEFAULT);
return priv->profile;
}
diff --git a/gdk/gdktypes.h b/gdk/gdktypes.h
index 5b0a656..2a377d8 100644
--- a/gdk/gdktypes.h
+++ b/gdk/gdktypes.h
@@ -435,18 +435,28 @@ struct _GdkPoint
/**
* GdkGLProfile:
- * @GDK_GL_PROFILE_DEFAULT: ...
- * @GDK_GL_PROFILE_LEGACY: ...
- * @GDK_GL_PROFILE_3_2_CORE: ...
+ * @GDK_GL_PROFILE_DEFAULT: The default profile.
+ * @GDK_GL_PROFILE_3_2_CORE: Use core 3.2 GL profiles
*
- * ...
+ * The profile to be used when creating a #GdkGLContext.
+ *
+ * Since: 3.16
*/
typedef enum {
GDK_GL_PROFILE_DEFAULT,
- GDK_GL_PROFILE_LEGACY,
GDK_GL_PROFILE_3_2_CORE
} GdkGLProfile;
+/**
+ * GdkGLError:
+ * @GDK_GL_ERROR_NOT_AVAILABLE: OpenGL support is not available
+ * @GDK_GL_ERROR_UNSUPPORTED_FORMAT: The requested visual format is not supported
+ * @GDK_GL_ERROR_UNSUPPORTED_PROFILE: The requested profile is not supported
+ *
+ * Error enumeration for #GdkGLContext.
+ *
+ * Since: 3.16
+ */
typedef enum {
GDK_GL_ERROR_NOT_AVAILABLE,
GDK_GL_ERROR_UNSUPPORTED_FORMAT,
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 9cc257b..94a09c7 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -2742,21 +2742,9 @@ gdk_window_get_paint_gl_context (GdkWindow *window,
window->impl_window->gl_paint_context =
GDK_WINDOW_IMPL_GET_CLASS (window->impl)->create_gl_context (window->impl_window,
TRUE,
- GDK_GL_PROFILE_3_2_CORE,
+ GDK_GL_PROFILE_DEFAULT,
NULL,
&internal_error);
- if (window->impl_window->gl_paint_context == NULL &&
- g_error_matches (internal_error, GDK_GL_ERROR,
- GDK_GL_ERROR_UNSUPPORTED_PROFILE))
- {
- g_clear_error (&internal_error);
- window->impl_window->gl_paint_context =
- GDK_WINDOW_IMPL_GET_CLASS (window->impl)->create_gl_context (window->impl_window,
- TRUE,
- GDK_GL_PROFILE_DEFAULT,
- NULL,
- &internal_error);
- }
}
if (internal_error != NULL)
diff --git a/gdk/x11/gdkglcontext-x11.c b/gdk/x11/gdkglcontext-x11.c
index 8b11c82..cde1e09 100644
--- a/gdk/x11/gdkglcontext-x11.c
+++ b/gdk/x11/gdkglcontext-x11.c
@@ -609,10 +609,6 @@ gdk_x11_gl_context_realize (GdkGLContext *context,
profile = gdk_gl_context_get_profile (context);
share = gdk_gl_context_get_shared_context (context);
- /* GDK_GL_PROFILE_DEFAULT is currently equivalent to the LEGACY profile */
- if (profile == GDK_GL_PROFILE_DEFAULT)
- profile = GDK_GL_PROFILE_LEGACY;
-
/* we check for the presence of the GLX_ARB_create_context_profile
* extension before checking for a GLXFBConfig.
*/
@@ -1193,7 +1189,7 @@ gdk_x11_window_create_gl_context (GdkWindow *window,
display = gdk_window_get_display (window);
- /* GDK_GL_PROFILE_DEFAULT is currently equivalent to the LEGACY profile */
+ /* GDK_GL_PROFILE_DEFAULT is currently equivalent to the 3_2_CORE profile */
if (profile == GDK_GL_PROFILE_DEFAULT)
profile = GDK_GL_PROFILE_3_2_CORE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]