Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2023-01-11 | Remove cached frame from view | David Robillard | 10 | -214/+364 | |
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 | 3 | -3/+3 | |
2023-01-11 | Center windows on their transient parent where possible | David Robillard | 3 | -16/+56 | |
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 | 3 | -0/+4 | |
2023-01-10 | Fix inconsistent naming convention | David Robillard | 1 | -5/+5 | |
2023-01-10 | Windows: Make puglGetScaleFactor always return a reasonable value | David Robillard | 1 | -4/+24 | |
This guesses the likely scale factor when the view hasn't been realized (and so there's no real window to get information for). It may still be wrong for multiple display systems, but will always return some scale factor that "exists" on the system, and should always be correct when there's only one display. | |||||
2023-01-08 | Prepare OpenGL context flags for OpenGL ES support | David Robillard | 4 | -11/+17 | |
2023-01-08 | Windows: Fix OpenGL profile hint interpretation | David Robillard | 1 | -2/+2 | |
2023-01-08 | Use ensureHint pattern everywhere | David Robillard | 6 | -60/+48 | |
2023-01-08 | Add PUGL_SAMPLE_BUFFERS hint | David Robillard | 4 | -14/+24 | |
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-08 | Add missing default hint | David Robillard | 1 | -0/+1 | |
2023-01-08 | Gracefully handle out of range hints | David Robillard | 1 | -3/+11 | |
2023-01-08 | Remove branch clone | David Robillard | 1 | -2/+0 | |
2023-01-08 | X11: Add support for _NET_WM_PING protocol | David Robillard | 2 | -14/+56 | |
This is mainly used to allow the window manager to close locked or otherwise misbehaving windows. The PID and hostname properties are both required to properly support this, but may also be used for other things. | |||||
2023-01-08 | Add support for raising windows | David Robillard | 3 | -8/+43 | |
2023-01-07 | Replace map/unmap events with more expressive configure events | David Robillard | 8 | -48/+36 | |
2023-01-07 | Add support for special view types and styles | David Robillard | 7 | -106/+516 | |
2023-01-07 | Support closing views by sending a close event | David Robillard | 4 | -4/+37 | |
2023-01-07 | Rename create/destroy events to realize/unrealize | David Robillard | 5 | -34/+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-07 | Replace visible flag with a more descriptive view "stage" | David Robillard | 5 | -19/+46 | |
2023-01-06 | MacOS: Fix repeated realize/unrealize | David Robillard | 1 | -1/+0 | |
2023-01-04 | Add puglUnrealize() | David Robillard | 4 | -23/+114 | |
2023-01-04 | Clean up licensing metadata | David Robillard | 1 | -0/+3 | |
2023-01-02 | Move attributes to a separate header | David Robillard | 2 | -0/+2 | |
2023-01-02 | X11: Create Cairo drawing surface with precisely the needed size | David Robillard | 1 | -12/+11 | |
This decouples drawing from the view frame, which can be out of sync with the drawing that is currently happening. | |||||
2023-01-02 | X11: Factor out getCurrentConfiguration | David Robillard | 1 | -11/+18 | |
2023-01-02 | Ensure that views have an event handler set | David Robillard | 1 | -0/+5 | |
Otherwise, there will be crashes in the implementation. | |||||
2023-01-02 | Factor out common realize checks and initialization | David Robillard | 5 | -44/+49 | |
2023-01-02 | Fix PUGL_NUM_CURSORS | David Robillard | 1 | -3/+1 | |
2023-01-02 | Remove dead code | David Robillard | 1 | -5/+0 | |
2022-12-27 | Fix inconsistent initial window positioning across platforms | David Robillard | 3 | -9/+17 | |
2022-12-27 | Set transient parent when views are realized if necessary | David Robillard | 3 | -1/+8 | |
2022-12-27 | Fail to set transient parent of views with a parent window | David Robillard | 2 | -0/+8 | |
2022-12-27 | MacOS: Fix timestamps on systems with different clock rates | David Robillard | 2 | -5/+14 | |
This seems to be a thing at least on MacOS 12 on M1. | |||||
2022-12-24 | Fix weird/inconsistent control flow in puglSetSize() | David Robillard | 1 | -3/+2 | |
I'm not really sure about directly updating the frame like this - or whether these fields should even exist in the first place (it's questionable whether the view is "really" the new size until the configure process is complete) - but regardless, the same pattern should probably be used for both size and position. "Probably", because touching anything like this tends to break some situation or another somewhere, but such is life. | |||||
2022-12-24 | Add diagonal cursors | falkTX | 3 | -9/+30 | |
2022-10-30 | Add malloc attributes to allocating functions | David Robillard | 1 | -0/+2 | |
These inform the compiler that the returned value doesn't alias with anything. Also somewhat handy as pseudo-documentation. | |||||
2022-10-30 | Windows: Fix missing field initializers when building as C++ | falkTX | 1 | -4/+14 | |
2022-10-07 | Suppress MinGW warnings | David Robillard | 1 | -1/+1 | |
2022-10-07 | Use uppercase integer literal suffixes | David Robillard | 6 | -46/+46 | |
2022-10-07 | Simplify clang-tidy configuration | David Robillard | 1 | -8/+1 | |
2022-10-07 | Suppress new warnings in clang-tidy 14 | David Robillard | 1 | -0/+1 | |
2022-07-16 | Fix missing field initializers when building as C++ | falkTX | 1 | -3/+3 | |
2022-06-28 | Simplify clang-tidy configuration | David Robillard | 1 | -1/+0 | |
2022-06-17 | Call XrmInitialize() | David Robillard | 1 | -0/+1 | |
This must be called before any other Xrm functions are used. | |||||
2022-06-08 | Use consistent terminology for native views | David Robillard | 3 | -3/+3 | |
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 | Consolidate common deprecated API implementation | David Robillard | 1 | -28/+0 | |
2022-06-08 | Separate platform.h from internal.h | David Robillard | 7 | -34/+58 | |
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 | 11 | -249/+261 | |
2022-06-08 | Fix potential null pointer dereference | David Robillard | 1 | -5/+5 | |
According to clang-tidy anyway, I'm not seeing it. |