aboutsummaryrefslogtreecommitdiffstats
path: root/pugl/detail/x11_gl.c
AgeCommit message (Collapse)AuthorFilesLines
2020-09-19Call glXSwapIntervalEXT inside active contextHanspeter Portner1-0/+2
Some NVIDIA cards using the proprietary drivers (e.g. GeForce GTX 460/550) need that.
2020-09-19Move puglX11GlEnter() and puglX11GlLeave() above puglX11GlCreate()David Robillard1-22/+22
2020-07-05Move stub backend function implementations to a detail headerDavid Robillard1-1/+1
2020-05-16Use email address in copyright headersDavid Robillard1-1/+1
Not really sure why I used a web link here (maybe because it's more stable), but this is more conventional.
2020-05-16Fix file documentationDavid Robillard1-2/+3
2020-03-15Remove backend resize methodDavid Robillard1-1/+0
2020-03-14Add logging APIDavid Robillard1-11/+16
2020-03-09Cleanup: Remove unnecessary includesDavid Robillard1-1/+0
Apparently glxext.h is always included in glx.h on modern systems. The window demo does not actually use any GL functions directly since they are all factored out.
2020-03-08X11: Implement PUGL_SWAP_INTERVALDavid Robillard1-0/+9
2020-03-08X11: Use function typedefs in glxext.hDavid Robillard1-6/+4
2020-03-08Cleanup: Remove use of GL defines in X11 backendDavid Robillard1-3/+4
These are equivalent anyway, but this avoids include-what-you-use warnings and makes it clear that there is no GL code in the backend.
2020-03-02X11: Fix return type of puglX11GlGetAttrib()David Robillard1-1/+1
2020-03-02X11: Fix return type of puglX11GlHintValue()David Robillard1-1/+1
2020-03-01Cleanup: Use a consistent style for all backend definitionsDavid Robillard1-9/+7
2020-03-01Cleanup: Fix includesDavid Robillard1-1/+0
2020-02-18Pass expose event to backend enter and leave functionsDavid Robillard1-3/+3
This is needed for clipping. Unfortunately, the puglEnterContext() and puglLeaveContext() API was not suitable for this, but this shouldn't matter in user code because it is only used for setup, and is slated for removal anyway. Instead, just call the backend functions directly in the implementation.
2019-11-21Rename "backend" headersDavid Robillard1-2/+2
Working on Vulkan clarified what has always been slightly smelly about the design and organization here: not everything that is API specific is really in a "backend" (a PuglBackend). The concrete example is puglGetProcAddress(), which only makes sense for GL and is actually implemented in the "backend" files. Arguably puglGetContext() is also such a thing. So, rename the headers so they can be the place where API-specific things go in general, which happens to include a backend most of the time. The stub is a bit of an exception to this, but whatever. The includes look tidier this way. In place of the old headers are compatibility stubs that just emit a warning and include the new version, which will be maintained for a while.
2019-11-21X11: Remove libGL dependency from GL backendDavid Robillard1-3/+0
This was the only use of actual GL in the backend, and I'm relatively sure this flush is pointless anyway. If, for some bizarre reason, anyone really wants to run without double buffers, they are always free to flush themselves.
2019-11-09Fix various clang-tidy warningsDavid Robillard1-4/+4
2019-11-03Add stub implementations of backend functionsDavid Robillard1-16/+3
Towards having actual trivial backends, but in general allows backends to not declare functions they don't care about which is nice and already a net reduction of actual code.
2019-09-14Add support for using a debug OpenGL contextDavid Robillard1-0/+3
2019-09-07Clean up error handlingDavid Robillard1-17/+20
2019-09-03Simplify hints implementationDavid Robillard1-11/+11
2019-08-02Clean up includesDavid Robillard1-1/+1
2019-07-29Cleanup: Clean up includes and call IWYU in lint targetDavid Robillard1-0/+5
2019-07-29Fix various clang-tidy warningsDavid Robillard1-1/+1
2019-07-29Reorganize source to separate private implementation detailsDavid Robillard1-0/+213
Taking a page from C++ convention, where "detail" is for things that should not be included in user code.