commit 5cdb357a219fbdda1e481eb436b882e0533439c6
parent d9808ceffbc2e0c21fc0dc1f4fc2fd8b547a086e
Author: falkTX <falktx@falktx.com>
Date: Mon, 31 Oct 2022 17:10:46 +0000
Fix usage of GL3 profile
Diffstat:
2 files changed, 25 insertions(+), 18 deletions(-)
diff --git a/dgl/src/WindowPrivateData.cpp b/dgl/src/WindowPrivateData.cpp
@@ -266,17 +266,6 @@ void Window::PrivateData::initPre(const uint width, const uint height, const boo
#endif
puglSetViewHint(view, PUGL_STENCIL_BITS, 8);
-#if defined(DGL_USE_OPENGL3) || defined(DGL_USE_GLES3)
- puglSetViewHint(view, PUGL_USE_COMPAT_PROFILE, PUGL_FALSE);
- puglSetViewHint(view, PUGL_CONTEXT_VERSION_MAJOR, 3);
-#elif defined(DGL_USE_GLES2)
- puglSetViewHint(view, PUGL_USE_COMPAT_PROFILE, PUGL_FALSE);
- puglSetViewHint(view, PUGL_CONTEXT_VERSION_MAJOR, 2);
-#else
- puglSetViewHint(view, PUGL_USE_COMPAT_PROFILE, PUGL_TRUE);
- puglSetViewHint(view, PUGL_CONTEXT_VERSION_MAJOR, 2);
-#endif
-
// PUGL_SAMPLES ??
puglSetEventFunc(view, puglEventCallback);
diff --git a/dgl/src/pugl.cpp b/dgl/src/pugl.cpp
@@ -201,17 +201,35 @@ bool puglBackendLeave(PuglView* const view)
void puglSetMatchingBackendForCurrentBuild(PuglView* const view)
{
-#ifdef DGL_CAIRO
+ #ifdef DGL_CAIRO
puglSetBackend(view, puglCairoBackend());
-#endif
-#ifdef DGL_OPENGL
+ #endif
+ #ifdef DGL_OPENGL
puglSetBackend(view, puglGlBackend());
-#endif
-#ifdef DGL_VULKAN
+ #endif
+ #ifdef DGL_VULKAN
puglSetBackend(view, puglVulkanBackend());
-#endif
- if (view->backend == nullptr)
+ #endif
+
+ if (view->backend != nullptr)
+ {
+ #ifdef DGL_OPENGL
+ #if defined(DGL_USE_OPENGL3) || defined(DGL_USE_GLES3)
+ puglSetViewHint(view, PUGL_USE_COMPAT_PROFILE, PUGL_FALSE);
+ puglSetViewHint(view, PUGL_CONTEXT_VERSION_MAJOR, 3);
+ #elif defined(DGL_USE_GLES2)
+ puglSetViewHint(view, PUGL_USE_COMPAT_PROFILE, PUGL_FALSE);
+ puglSetViewHint(view, PUGL_CONTEXT_VERSION_MAJOR, 2);
+ #else
+ puglSetViewHint(view, PUGL_USE_COMPAT_PROFILE, PUGL_TRUE);
+ puglSetViewHint(view, PUGL_CONTEXT_VERSION_MAJOR, 2);
+ #endif
+ #endif
+ }
+ else
+ {
puglSetBackend(view, puglStubBackend());
+ }
}
// --------------------------------------------------------------------------------------------------------------------