Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-10-31 | Use static polymorphism in C++ bindings | David Robillard | 2 | -41/+35 | |
This removes virtual function overhead, and the weird situation of having to include pugl.ipp once (or worse, for pugl to provide a binary C++ library). | |||||
2020-10-30 | Simplify header names | David Robillard | 10 | -10/+10 | |
2020-10-30 | Remove GL and GLU wrapper headers | David Robillard | 3 | -3/+1 | |
Include them in pugl_gl.h instead, to simplify things and unclutter the include directory. | |||||
2020-10-28 | Add Vulkan demos | David Robillard | 4 | -0/+5342 | |
2020-10-24 | Replace live resize with loop events | David Robillard | 1 | -2/+17 | |
This allows the application to control how recursive loops are handled rather than have Pugl impose behavior which can get in the way. For example, an application may not want to continuously animate while being resized, or set up its rendering differently in this situation. For example, with Vulkan, setting up a different swapchain can be necessary for smooth performance while live resizing on Windows, and Pugl has no ability to do this. I think it was a mistake to add this timer to Pugl itself, because it was always a bit of a leaky abstraction, and not very appropriate for a library that is supposed to be a thin abstraction layer. Though it almost seemed like things ran as usual while resizing on Windows and MacOS, the main event loop being stalled can be confusing, and there was no way to detect this. This way, applications must explicitly handle this situation and can implement the behavior they want without Pugl getting in the way. This also simplifies the Pugl implementation a bit, which is always nice. | |||||
2020-10-21 | Fix shader demo arguments to allow running at maximum framerate | David Robillard | 1 | -2/+3 | |
2020-10-21 | Use separate clang-tidy configurations in different directories | David Robillard | 1 | -0/+20 | |
This allows more fine-grained control. In particular, it prevents mistaked from creeping in to the public headers or core implementation because of warnings that are disabled for the tests and examples. This keeps the code that is used in other projects as clean as possible. | |||||
2020-10-21 | Add missing include guards | David Robillard | 4 | -3/+18 | |
2020-10-19 | Cleanup: Fix IWYU warnings | David Robillard | 3 | -5/+1 | |
2020-10-16 | Windows: Fix cursor when leaving client area | Jordan Halase | 1 | -0/+3 | |
This resets the cursor when the pointer moves into the title bar. | |||||
2020-10-16 | Set a default size in pugl_print_events | Jordan Halase | 1 | -0/+1 | |
2020-10-16 | Show errors in example programs consistently | David Robillard | 1 | -2/+3 | |
2020-10-14 | Explicitly declare all special methods | David Robillard | 1 | -0/+8 | |
2020-10-04 | Move cube vertex data to the file where it is actually used | David Robillard | 2 | -49/+49 | |
2020-10-04 | Use refresh rate to better drive example event loop | David Robillard | 1 | -2/+33 | |
2020-10-04 | Print all view hints in shader demo and hint tests | David Robillard | 1 | -0/+1 | |
2020-10-03 | Change FPS print format in demos for consistency with other output | David Robillard | 1 | -3/+3 | |
2020-07-05 | Improve struct packing | David Robillard | 5 | -8/+8 | |
Unfortunately there is no warning like Wpadded but only for internal padding, so that can't be turned on, but if there was, after this commit the build would be clean with it. Maybe some day... | |||||
2020-06-13 | Add puglSetCursor() | Jean Pierre Cimalando | 1 | -0/+171 | |
2020-06-13 | Cleanup: Fix implicit conversion warnings with clang | David Robillard | 2 | -3/+4 | |
2020-06-13 | Cleanup: Fix uninitialised variables | David Robillard | 2 | -5/+5 | |
2020-06-08 | Windows: Fix maximum size | David Robillard | 1 | -0/+1 | |
2020-05-16 | Add default and maximum size | David Robillard | 5 | -10/+8 | |
2020-05-16 | Use line comments where appropriate | David Robillard | 1 | -1/+1 | |
2020-05-16 | Use email address in copyright headers | David Robillard | 10 | -10/+10 | |
Not really sure why I used a web link here (maybe because it's more stable), but this is more conventional. | |||||
2020-05-16 | Fix file documentation | David Robillard | 7 | -7/+14 | |
2020-04-22 | C++ Demo: Fix sync option | David Robillard | 1 | -1/+1 | |
2020-04-22 | C++ Demo: Fix help option | David Robillard | 1 | -0/+4 | |
2020-04-06 | Implement puglSetTransientFor() for Mac and Windows | David Robillard | 1 | -4/+9 | |
2020-04-04 | Shader Demo: Support both GL 3 and 4 | David Robillard | 1 | -10/+33 | |
2020-04-04 | Shader Demo: Use a UBO | David Robillard | 1 | -7/+16 | |
2020-04-04 | Shader Demo: Factor out version-dependent GLSL header | David Robillard | 2 | -9/+16 | |
2020-04-04 | Shader Demo: Factor out animated rectangle definitions | David Robillard | 2 | -44/+84 | |
2020-04-04 | Shader Demo: Explicitly set up alpha blending | David Robillard | 1 | -1/+2 | |
2020-04-03 | Rewrite C++ bindings | David Robillard | 1 | -0/+141 | |
2020-04-02 | Strengthen warnings | David Robillard | 4 | -22/+34 | |
2020-04-01 | Cleanup: Fix mismatched file comments | David Robillard | 1 | -1/+1 | |
2020-04-01 | Replace puglShowWindow() with puglRealize() | David Robillard | 5 | -9/+15 | |
2020-03-31 | GL3 Demo: Fix conversion warnings | David Robillard | 1 | -5/+7 | |
2020-03-17 | Use clearer names for pointer events | David Robillard | 3 | -9/+9 | |
These old "notify" names are a smell from X11 which is a bit strange and inconsistent here, since nearly everything is a "notification" of sorts. I think the new names here are much more clear since they are consistent with the keyboard focus events. | |||||
2020-03-16 | Embed Demo: Add timer to occasionally reverse spin direction | David Robillard | 1 | -2/+10 | |
2020-03-16 | Window Demo: Only redisplay on update when running continuously | David Robillard | 1 | -1/+3 | |
2020-03-15 | Unify event loop functions as puglUpdate() | David Robillard | 5 | -31/+30 | |
The previous separation between polling and dispatching was a lie, especially on MacOS where it is impossible to only poll for events without dispatching anything. Providing such an API is misleading, and problematic in various other ways. So, merge them into a single puglUpdate() function which can do the right thing on all platforms. This also adds the behaviour of actually processing all events in the given time interval, which is almost always what clients actually want to do when using a positive timeout (naively doing this before caused terrible input lag). | |||||
2020-03-15 | Add type and flags to world | David Robillard | 5 | -5/+5 | |
Unfortunately this is an API break, but there's no reasonable way to deprecate the old function and this is required for things to work correctly. The type will be used in following commits to tick the main loop and dispatch events correctly for either case. | |||||
2020-03-15 | Print events in Cairo demo | David Robillard | 1 | -0/+2 | |
2020-03-15 | Remove static data from Cairo demo | David Robillard | 1 | -44/+56 | |
2020-03-13 | Strengthen warnings | David Robillard | 3 | -6/+0 | |
2020-03-09 | GL3 Demo: Set up and tear down GL on PUGL_CREATE and PUGL_DESTROY | David Robillard | 1 | -19/+17 | |
This eliminates the use of puglEnterContext(). | |||||
2020-03-09 | GL3 Demo: Factor out GL setup and teardown | David Robillard | 1 | -69/+102 | |
2020-03-09 | Window Demo: Fix updating when not runnning continuously | David Robillard | 2 | -7/+17 | |