aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-11-18Move puglGetProcAddress to pugl_gl_backend.hDavid Robillard
This establishes a general pattern for backend-specific APIs, so that pugl.h doesn't become a mess. The name of these headers, and the definition of "backend", is a little fuzzy here, but it was before in reality anyway.
2019-11-18Add test utility function for logging errorsDavid Robillard
2019-11-18Ignore clang-tidy warnings in system headersDavid Robillard
2019-11-18Add error checking option to test programsDavid Robillard
2019-11-17X11: Don't select on server socket if events are already queuedosch
2019-11-17X11: Support pasting (almost) arbitrarily long textDavid Robillard
This is a bit ridiculous, but using a "probably big enough" value seems to be what everyone does. This particular value is the one used by Gtk.
2019-11-17X11: Don't send expose events to invisible windowsDavid Robillard
2019-11-17X11: Track visibility via system eventsDavid Robillard
This ensure that visibility is properly updated when a window is made visible or invisible by the user or window system. Unfortunately it does not seem to propagate automatically to child windows, but this is at least better than the previous situation, and good enough for most cases.
2019-11-17Use typedefs for flag typesDavid Robillard
This doesn't change anything about type-safety (C can't do that), but at least makes the intent of things clearer.
2019-11-17Cleanup: Use consistent formatting for field documentationDavid Robillard
2019-11-09Add clang-tidy file and update lint targetDavid Robillard
2019-11-09Fix various clang-tidy warningsDavid Robillard
2019-11-09Make pugl_gl3_test deterministicDavid Robillard
2019-11-09Add puglStrerror() and improve test program error reportingDavid Robillard
2019-11-03Remove redisplay flag and add puglPostRedisplayRect()David Robillard
2019-11-03X11: Only merge expose events if they intersectDavid Robillard
Towards actual fine-grained exposure. This uses the previous behaviour if expose events intersect to reduce redundant drawing, but dispatches expose events immediately (after flushing and pending configure events) if they don't to support partial redraws.
2019-11-03Add puglGetNativeWorld()David Robillard
2019-11-03Windows: Do not require backends to have a surfaceDavid Robillard
This was just leftover cruft from before error handling was cleaned up, any failure to configure must now be reported by the backend.
2019-11-03Add pugl_print_events test programDavid Robillard
2019-11-03Expose functional stub backendDavid Robillard
2019-11-03Move platform stub configuration code to platform headersDavid Robillard
This allows backends which use basic software rendering (like Cairo) to share the common basic window format setup code.
2019-11-03Add stub implementations of backend functionsDavid Robillard
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-11-03Add verbose option to test programs to print all eventsDavid Robillard
2019-11-03Fix puglFreeView() crashes when window creation failedJordan Halase
2019-11-03Cleanup: Fix whitespaceDavid Robillard
2019-11-03Fix duplicate word in error messageDavid Robillard
2019-11-03Windows: Fix GL context flagsDavid Robillard
2019-10-21Don't use compatible profile in pugl_gl3_testDavid Robillard
It turns out that there are some systems where having this on makes things not work, because compatible profiles are only supported up to earlier versions, despite a much higher version being available.
2019-10-15Mac: Remove unused method declarationDavid Robillard
2019-09-16Fix memory leakDavid Robillard
2019-09-14Windows: Fix Cairo backend buildDavid Robillard
2019-09-14Add support for using a debug OpenGL contextDavid Robillard
2019-09-14Wrap deprecated declarations in PUGL_DISABLE_DEPRECATEDDavid Robillard
This allows projects that use strict warning flags to suppress warning noise.
2019-09-07Build documentation on CIDavid Robillard
2019-09-07Improve documentation and use LV2 documentation styleDavid Robillard
2019-09-07Clean up error handlingDavid Robillard
2019-09-07Add clipboard supportDavid Robillard
2019-09-07Cleanup: Fix whitespaceDavid Robillard
2019-09-07Windows: Fix library leak during world creationDavid Robillard
2019-09-07Add OpenGL 3 test programDavid Robillard
2019-09-03Windows: Fix puglGetProcAddress() for OpenGL 1.1 functionsDavid Robillard
2019-09-03Make almost everything return a statusDavid Robillard
Prepares the API for proper error handling, even though there isn't any for these functions yet.
2019-09-03Make event handler return a statusDavid Robillard
Currently unused, but this is to leave open the possibility of event propagation or better errror handling.
2019-09-03Factor out parsing test optionsDavid Robillard
2019-09-03Reorganize header and documentation into coherent sectionsDavid Robillard
2019-09-03Add puglSetWindowTitle()David Robillard
2019-09-03Rename remaining init functionsDavid Robillard
This finishes the removal of the init/set split. While these ones are superficial, the general idea here is to provide general functions that work before or after window creation where possible. This prevents the situation where ever more dynamic counterparts to existing init functions get added over time.
2019-09-03Add puglSetClassName()David Robillard
2019-09-03Replace puglInitTransientFor() with puglSetTransientFor()David Robillard
2019-09-03Replace size and aspect ratio init functions with dynamic onesDavid Robillard