Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2023-05-29 | Deprecate redundant key symbols | David Robillard | 1 | -4/+4 | |
2023-05-12 | Factor out puglIsValidSize() and use consistent rules everywhere | David Robillard | 1 | -4/+3 | |
2023-05-12 | MacOS: Fix inverted puglPostRedisplay() coordinates | David Robillard | 1 | -1/+5 | |
2023-05-03 | Fix internal function linkage | David Robillard | 1 | -1/+1 | |
2023-01-14 | Add general string hint interface | David Robillard | 1 | -11/+23 | |
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-11 | MacOS: Avoid calling sendEvent in modules | reuk | 1 | -56/+31 | |
2023-01-11 | Clean up puglRealize() implementations | David Robillard | 1 | -6/+4 | |
2023-01-11 | Remove cached frame from view | David Robillard | 1 | -88/+141 | |
This was just a source of ambiguity and bugs, since it represented different things at different times and could become stale. Redundant data is always trouble, so eliminate it, leaving just two positions/sizes: the defaults (used when the view is not yet realized), and the last configuration. | |||||
2023-01-11 | Fix checks for invalid view positions | David Robillard | 1 | -1/+1 | |
2023-01-11 | Center windows on their transient parent where possible | David Robillard | 1 | -6/+32 | |
This is only really relevant in practice on MacOS and Windows. On X11, the window manager places new windows where it pleases. | |||||
2023-01-10 | Add PUGL_CURSOR_ALL_SCROLL | David Robillard | 1 | -0/+2 | |
2023-01-08 | Use ensureHint pattern everywhere | David Robillard | 1 | -12/+4 | |
2023-01-08 | Add support for raising windows | David Robillard | 1 | -3/+15 | |
2023-01-07 | Replace map/unmap events with more expressive configure events | David Robillard | 1 | -5/+4 | |
2023-01-07 | Add support for special view types and styles | David Robillard | 1 | -20/+187 | |
2023-01-07 | Support closing views by sending a close event | David Robillard | 1 | -0/+5 | |
2023-01-07 | Rename create/destroy events to realize/unrealize | David Robillard | 1 | -4/+2 | |
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-07 | Replace visible flag with a more descriptive view "stage" | David Robillard | 1 | -6/+4 | |
2023-01-06 | MacOS: Fix repeated realize/unrealize | David Robillard | 1 | -1/+0 | |
2023-01-04 | Add puglUnrealize() | David Robillard | 1 | -1/+38 | |
2023-01-02 | Factor out common realize checks and initialization | David Robillard | 1 | -14/+5 | |
2023-01-02 | Remove dead code | David Robillard | 1 | -5/+0 | |
2022-12-27 | Fix inconsistent initial window positioning across platforms | David Robillard | 1 | -4/+8 | |
2022-12-27 | Set transient parent when views are realized if necessary | David Robillard | 1 | -0/+3 | |
2022-12-27 | Fail to set transient parent of views with a parent window | David Robillard | 1 | -0/+4 | |
2022-12-27 | MacOS: Fix timestamps on systems with different clock rates | David Robillard | 1 | -3/+9 | |
This seems to be a thing at least on MacOS 12 on M1. | |||||
2022-12-24 | Add diagonal cursors | falkTX | 1 | -0/+17 | |
2022-10-07 | Use uppercase integer literal suffixes | David Robillard | 1 | -2/+2 | |
2022-06-08 | Use consistent terminology for native views | David Robillard | 1 | -1/+1 | |
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-08 | Separate platform.h from internal.h | David Robillard | 1 | -0/+1 | |
This makes the internal header structure match the "kinds" of definition inside Pugl: common implementations of public API, things available internally to platform implementations, and things the platform must define. | |||||
2022-06-08 | Separate private and public function implementations | David Robillard | 1 | -1/+1 | |
2022-06-07 | Use a consistent scheme for enum sizes | David Robillard | 1 | -2/+2 | |
2022-06-07 | Make puglRealize() always gracefully fail with a bad configuration | David Robillard | 1 | -0/+5 | |
2022-05-23 | Add rich clipboard support | David Robillard | 1 | -24/+172 | |
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-21 | Add puglGetScaleFactor() | David Robillard | 1 | -2/+10 | |
2022-05-21 | Add puglSetPosition() and puglSetSize() | David Robillard | 1 | -11/+71 | |
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-21 | Use consistent integer types for view positions and sizes | David Robillard | 1 | -10/+13 | |
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-21 | Add a uniform API for setting size hints | David Robillard | 1 | -74/+66 | |
This collapses many functions into one, which makes the API more easily extensible and reduces code size. | |||||
2022-05-21 | Rename PUGL_UNSUPPORTED_TYPE to be more generic | David Robillard | 1 | -1/+1 | |
2022-05-21 | MacOS: Specify maximum size constraint on draw view | David Robillard | 1 | -15/+37 | |
I am not sure why the minimum was only specified before, but it seems like an oversight. | |||||
2021-12-17 | Adopt REUSE machine-readable licensing standard | David Robillard | 1 | -16/+3 | |
See https://reuse.software/ for details. | |||||
2021-12-17 | Make button numbers consistent across platforms | David Robillard | 1 | -2/+2 | |
There's no universal consensus on how buttons are numbered. Left, right, middle as 0, 1, 2 seems to be the most common convention on modern vaguely similar libraries, so I've gone with that. The switch to zero-based indices will obviously break all current client code. Particularly since now is the time to finish any breaking changes before a stable release, I think that is better than only changing the middle and right numbers, which would likely go unnoticed. | |||||
2021-12-16 | Rename puglSetTransientFor to puglSetTransientParent | David Robillard | 1 | -1/+1 | |
2021-08-25 | Fix whitespace | David Robillard | 1 | -1/+2 | |
2021-08-25 | MacOS: Fix build on MacOS 10.9 and earlier | falkTX | 1 | -0/+1 | |
NSEventSubtype was introduced in 10.10. | |||||
2021-06-07 | MacOS: Fix conversion warning | falkTX | 1 | -1/+1 | |
2021-05-25 | Rename event structs in a more readable style | David Robillard | 1 | -14/+14 | |
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-03 | MacOS: Make puglGetNativeWorld() return the NSApplication | David Robillard | 1 | -2/+2 | |
2021-05-03 | Fix crash when freeing a view that has not been configured | David Robillard | 1 | -3/+11 | |
2021-05-03 | Fix questionable event casts | David Robillard | 1 | -24/+55 | |
I don't think there is any UB actually happening here, but some of these were casting to a pointer of a larger type, which is problematic. Unfortunately, it makes for quite a bit of tedious verbosity, but I don't see a decent way around that in C99. |