aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)AuthorFilesLines
2023-09-23Format meson.build files with muonDavid Robillard1-8/+3
The less time wasted with manual code formatting, the better.
2023-05-29Add support for numeric keypad and simplify keyboard handlingDavid Robillard1-20/+85
2023-05-27Print special keys in verbose test outputDavid Robillard1-4/+96
2023-05-27Separate pugl/glu.h from pugl/gl.hDavid Robillard1-0/+1
The GLU library is often shipped in a separate package, so it's possible to have a system with GL, but no GLU headers. Since use of GLU isn't universal (none of the examples use it), its inclusion can break builds that would otherwise work. So, move it to a separate wrapper header so this can be avoided.
2023-05-22Speed up and improve reliability of timer testDavid Robillard1-3/+3
2023-05-22Test that multiple timers with different frequencies work correctlyDavid Robillard1-41/+100
2023-05-12Make examples continuous by defaultDavid Robillard1-5/+5
2023-05-03Replace strict option with new meson warning levelDavid Robillard1-7/+8
2023-05-03Use consistent names for internal meson dependenciesDavid Robillard1-5/+5
2023-05-03Fix mismatched format specifiersDavid Robillard1-1/+1
2023-01-14Allow applications to specify the Vulkan library pathDavid Robillard1-1/+1
I don't know if vendoring the Vulkan library is appropriate, but regardless, this allows applications to set the name to whatever they want, or specify an absolute path, just in case the standard value baked into Pugl isn't the right one in some situation.
2023-01-14Windows: Add PUGL_DARK_FRAME hintDavid Robillard1-0/+2
This allows dark applications to visually integrate more nicely in Windows 10. A little thing, but it really goes a long way to make programs not look out of place and half-baked.
2023-01-14Add general string hint interfaceDavid Robillard18-40/+41
This replaces the window title and class name APIs with a more general one that can be easily extended to other things, like icon names, more detailed application hints, and so on.
2023-01-11Remove dead codeDavid Robillard1-14/+0
2023-01-11Run inline build tests for the sake of completenessDavid Robillard1-10/+18
2023-01-11Add smoke test for puglSetCursor()David Robillard2-0/+76
2023-01-11Improve test coverageDavid Robillard4-6/+13
2023-01-11Test redisplay outside of event handlersDavid Robillard1-1/+10
2023-01-11Fix coverage of puglStrerror testDavid Robillard1-1/+1
2023-01-11Avoid running clipboard tests in parallelDavid Robillard1-2/+20
Since the clipboard is a globally shared resource, running clipboard tests in parallel is likely to fail because one test can smash the state expected by another.
2023-01-11Relax timer test slightly and make it run for less timeDavid Robillard1-2/+2
2023-01-11Spread tests around the screenDavid Robillard16-19/+34
This makes it unlikely for tests to be completely obscured, which should hopefully make things a bit more consistent and reliable, especially when running all of the tests in parallel. It also makes things a bit less visually confusing.
2023-01-09Raise test windows initiallyDavid Robillard11-12/+12
This seems to make thing a bit more reliable, and matches what was happening before the addition of more precise show commands.
2023-01-08Add support for OpenGL ES 3.2 in pugl_shader_demoDavid Robillard1-1/+23
2023-01-08Prepare OpenGL context flags for OpenGL ES supportDavid Robillard3-13/+18
2023-01-08Add PUGL_SAMPLE_BUFFERS hintDavid Robillard2-0/+4
Towards a more direct and explicit mapping to platform hints, and more consistent behaviour across platforms. OpenGL applications are generally expected to be explicit about hints like this.
2023-01-08Gracefully handle out of range hintsDavid Robillard1-0/+6
2023-01-08Add support for raising windowsDavid Robillard12-13/+13
2023-01-07Replace map/unmap events with more expressive configure eventsDavid Robillard4-26/+14
2023-01-07Add support for special view types and stylesDavid Robillard1-6/+43
2023-01-07Rename create/destroy events to realize/unrealizeDavid Robillard5-29/+29
As evidence that this was confusing, the documentation for these was an outright lie, and I've burned quite a bit of time in the past few days trying to rework things based around that flawed understanding. These names make it clear what these events actually are. If we need actual create/destroy events with a broader scope, they'll have to be added, but I suspect those aren't actually useful anyway.
2023-01-04Add puglUnrealize()David Robillard1-13/+30
2023-01-04Clean up licensing metadataDavid Robillard1-0/+3
2023-01-04Improve reliability of remote copy/paste testDavid Robillard1-0/+2
Things tend to stall when the two windows exactly overlap each other, which is itself probably a bug of some sort, but that's an unusual situation and not what this test is about.
2022-11-24Use 0BSD for trivial "public domain intent" thingsDavid Robillard1-1/+1
2022-11-05Fix meson warnings on MacOSDavid Robillard1-1/+1
2022-10-07Use uppercase integer literal suffixesDavid Robillard6-7/+7
2022-10-07Simplify clang-tidy configurationDavid Robillard1-8/+1
2022-10-07Suppress new warnings in clang-tidy 14David Robillard1-0/+2
2022-10-07Clean up meson definitionsDavid Robillard1-33/+59
2022-08-31Fix non-strict MacOS buildDavid Robillard1-1/+1
2022-06-28Simplify clang-tidy configurationDavid Robillard1-2/+0
2022-06-08Use consistent terminology for native viewsDavid Robillard1-2/+2
On MacOS in particular, views and windows are entirely different concepts, so confusing them... confuses things. This was the last holdover in the API that used the old "native window".
2022-06-08Separate private and public function implementationsDavid Robillard2-5/+7
2022-06-07Use a consistent scheme for enum sizesDavid Robillard1-3/+1
2022-06-07Remove unnecessary forward-compatibility codeDavid Robillard1-10/+0
2022-06-07Make puglRealize() always gracefully fail with a bad configurationDavid Robillard1-1/+5
2022-05-28Clean up and strengthen warning flagsDavid Robillard2-14/+18
2022-05-23Add rich clipboard supportDavid Robillard3-12/+70
This implements a more powerful protocol for working with clipboards, which supports datatype negotiation, and fixes various issues by mapping more directly to how things work on X11.
2022-05-21Use consistent integer types for view positions and sizesDavid Robillard2-21/+24
Actual window sizes and positions fit easily in a 16-bit integer. So, we use that in "representation contexts" like events. This makes structures smaller, and allows the values to be converted to float, double, or integer without casting (since any int16_t or uint16_t value can fit in them without loss). Setter APIs use native integers for convenience, to avoid casting hassles when doing arithmetic. Ranges are checked at runtime.