aboutsummaryrefslogtreecommitdiffstats
path: root/examples
AgeCommit message (Collapse)AuthorFilesLines
2023-01-11Raise the initial display of example windowsDavid Robillard9-11/+11
This is the standard behaviour for applications.
2023-01-10Add PUGL_CURSOR_ALL_SCROLLDavid Robillard1-1/+1
2023-01-08Add support for OpenGL ES 3.2 in pugl_shader_demoDavid Robillard9-38/+65
2023-01-08Update example GLAD loader and add OpenGL ES 3.2David Robillard2-9/+1280
2023-01-08Prepare OpenGL context flags for OpenGL ES supportDavid Robillard5-7/+8
2023-01-08Add support for raising windowsDavid Robillard11-13/+13
2023-01-07Add support for special view types and stylesDavid Robillard6-4/+290
2023-01-07Rename create/destroy events to realize/unrealizeDavid Robillard1-4/+4
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-04Clean up licensing metadataDavid Robillard22-4/+58
2023-01-02Clean up whitespaceDavid Robillard1-6/+4
2022-12-24Add diagonal cursorsfalkTX1-2/+2
2022-11-24Use 0BSD for trivial "public domain intent" thingsDavid Robillard4-4/+4
2022-10-07Use uppercase integer literal suffixesDavid Robillard6-52/+52
2022-10-07Avoid C-style casts in C++ codeDavid Robillard3-7/+6
2022-10-07Simplify clang-tidy configurationDavid Robillard1-8/+1
2022-10-07Suppress new warnings in clang-tidy 14David Robillard1-0/+3
2022-10-07Fix whitespaceDavid Robillard1-12/+12
Support for deleted method syntax has improved in clang-format 14.
2022-10-07Clean up meson definitionsDavid Robillard12-73/+106
2022-09-28Handle fread() errors in examplesDavid Robillard2-2/+9
2022-08-31Add include_directories to pugl_depMichael Fisher9-9/+9
2022-06-28Simplify clang-tidy configurationDavid Robillard1-5/+1
2022-06-08Use consistent terminology for native viewsDavid Robillard2-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-03Fix Cairo warnings on MacOSDavid Robillard1-1/+1
2022-05-28Update documentationDavid Robillard1-0/+31
2022-05-28Clean up and strengthen warning flagsDavid Robillard3-9/+14
2022-05-28Avoid implicit conversionsDavid Robillard1-4/+3
2022-05-23Add rich clipboard supportDavid Robillard1-4/+46
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-22Factor out pugl_clipboard_demo example programDavid Robillard5-14/+236
This is a simpler example than pugl_embed_demo that demonstrates clipboard functionality without the complexity of embedded views.
2022-05-21Add puglSetPosition() and puglSetSize()David Robillard2-35/+22
These are redundant with puglSetFrame in a sense, but allow setting the size of a view without the position, or vice-versa. This API also maps more nicely to Wayland, where applications can not position themselves (but can resize).
2022-05-21Use consistent integer types for view positions and sizesDavid Robillard4-30/+34
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 Robillard9-36/+36
This collapses many functions into one, which makes the API more easily extensible and reduces code size.
2022-05-21Fix build of examples that use a stub backendDavid Robillard1-3/+21
2022-05-20Use consistent class names and titles in tests and examplesDavid Robillard9-13/+13
2022-05-20MacOS: Build examples as application bundlesDavid Robillard21-74/+299
This is required on MacOS to make the examples usable. When run as bare programs, they don't show up as normal windows or receive keyboard input.
2022-04-23Move reserved platform defines from code to build systemDavid Robillard2-9/+9
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.
2022-03-14Fix warning in VS2019David Robillard1-1/+3
2021-12-17Remove unused struct definitionDavid Robillard1-4/+0
2021-12-17Pass const references where appropriateDavid Robillard1-7/+8
2021-12-17Adopt REUSE machine-readable licensing standardDavid Robillard22-241/+51
See https://reuse.software/ for details.
2021-12-17Suppress new warnings in clang-tidy 13David Robillard1-1/+2
2021-12-17Fix spelling errorsDavid Robillard1-1/+1
2021-12-16Rename puglSetTransientFor to puglSetTransientParentDavid Robillard1-2/+2
2021-08-28Suppress new clang-tidy warningsDavid Robillard1-0/+4
2021-05-28Remove static downcasts in C++ bindingsDavid Robillard1-2/+1
2021-05-28Split up warning suppression flags more finelyDavid Robillard1-6/+51
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-28Remove unnecessary include directoryDavid Robillard1-1/+0
2021-05-25Rename event structs in a more readable styleDavid Robillard3-3/+3
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-24Add fancy constructor for C++ events and wrap puglSendEvent()David Robillard1-1/+6
2021-05-24Consistently refer to C++ as "cpp" and fix installationDavid Robillard4-6/+6
2021-05-08Send unmap/map events when the view is minimized/restoredDavid Robillard1-26/+36
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.