aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)AuthorFilesLines
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.
2021-12-17Suppress new warnings in clang-tidy 13David Robillard1-1/+1
2021-12-17Remove unnecessary includeDavid Robillard1-1/+0
2021-12-16MacOS: Fix warnings in unified ObjC++ test buildDavid Robillard1-1/+12
2021-08-28Suppress new clang-tidy warningsDavid Robillard1-0/+3
2021-05-28Remove static downcasts in C++ bindingsDavid Robillard1-1/+0
2021-05-28Remove unnecessary "void" in C++David Robillard1-1/+1
2021-05-28Split up warning suppression flags more finelyDavid Robillard1-3/+62
This avoids polluting the main list of suppressions with things that are only triggered in tests or examples, making it clearer which warning are present in pugl itself.
2021-05-27Add test for building the implementation as included C++David Robillard3-0/+161
2021-05-25Rename event structs in a more readable styleDavid Robillard4-5/+5
Aside from reading more naturally, this avoids clashes with types that are not events, like PuglEventFlags. This is also more consistent with the C++ bindings, where "EventExpose" would be quite strange, for example. Apologies for the noise. Aliases to the old names will be preserved in the deprecated API like other things for a short while.
2021-05-24Test invalid hint casesDavid Robillard2-0/+16
2021-05-08Send unmap/map events when the view is minimized/restoredDavid Robillard2-2/+2
X11 Window managers set WM_STATE to notify about minimization, often without sending core X visibility events (which seems odd to me, but that's what Gnome does anyway). So, implement this protocol and send map/unmap events to the view, and adjust the Windows implementation to do the same for consistency across all platforms.
2021-05-08Print create/destroy and map/unmap events in tests by defaultDavid Robillard1-8/+8
2021-05-06Add basic test for OpenGL supportDavid Robillard2-0/+121
2021-05-06Add basic test for stub backendDavid Robillard2-0/+80
2021-05-06Add basic test for Vulkan supportDavid Robillard2-2/+227
2021-05-06Add test for copy/pasteDavid Robillard3-0/+296