aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)AuthorFilesLines
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.
2022-05-21Add a uniform API for setting size hintsDavid Robillard16-23/+24
This collapses many functions into one, which makes the API more easily extensible and reduces code size.
2022-05-21Rename PUGL_UNSUPPORTED_TYPE to be more genericDavid Robillard1-1/+1
2022-05-21Set a title for all test windowsDavid Robillard5-0/+6
2022-05-20Use consistent class names and titles in tests and examplesDavid Robillard17-19/+19
2022-05-03Fix crash when destroying OpenGL views that haven't been realizedJean Pierre Cimalando2-1/+63
2022-04-23Put unit tests in a "unit" suiteDavid Robillard1-4/+8
This enables running them without the data tests (which can be annoying while working in a messy repo), and for bonus points makes the log output look more uniform.
2022-04-23Fix IWYU warningsDavid Robillard1-1/+0
I suspect that using the same configuration across both C and C++ is starting to wear a bit thin, but this will do for now.
2022-04-23Relax redisplay test to pass on MacOS 11.6David Robillard1-4/+6
Since upgrading to 11.6 (on an Intel Macbook), this test no longer seems to pass. It's unfortunate to not test that small redisplay requests only result in small exposures, but I don't think the previous strict check reflects reality. Exposing more than the application requested, for whatever reason, is a natural part of window environments, so I don't know if this is something that can be reliably unit tested.
2022-04-23Add descriptive verbose output to test_redisplayDavid Robillard1-8/+21
2022-04-23Move reserved platform defines from code to build systemDavid Robillard3-4/+0
Numerous things warn about this, and it's generally a bad idea to put these in the code since it can result in incompatibly compiled code being linked together. Unfortunately this makes building manually (without the build system) more fiddly, but such is life.
2021-12-17Adopt REUSE machine-readable licensing standardDavid Robillard24-349/+58
See https://reuse.software/ for details.