aboutsummaryrefslogtreecommitdiffstats
path: root/src/x11_cairo.c
AgeCommit message (Collapse)AuthorFilesLines
2023-10-21Clean up includesDavid Robillard1-1/+0
2023-05-03Fix implicit sign conversionsDavid Robillard1-2/+2
2023-02-10Fix partial exposure in X11 Cairo backendDavid Robillard1-10/+35
2023-01-02X11: Create Cairo drawing surface with precisely the needed sizeDavid Robillard1-12/+11
This decouples drawing from the view frame, which can be out of sync with the drawing that is currently happening.
2022-05-21X11: Remove redundant display memberDavid Robillard1-1/+1
2022-04-21Remove unused return type from backend destroy methodsDavid Robillard1-4/+2
Since this is essentially a destructor, I don't think there's anything really useful to do with errors here, and in practice no backends actually used it anyway.
2021-12-17Adopt REUSE machine-readable licensing standardDavid Robillard1-15/+2
See https://reuse.software/ for details.
2021-05-25Rename event structs in a more readable styleDavid Robillard1-2/+2
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-24Shrink codeDavid Robillard1-4/+1
2021-05-24Separate stub backends from other backendsDavid Robillard1-1/+1
Stub backends were a dependency of other backends to allow some code reuse. However, that can cause conflicting symbols if multiple backends are linked into the same binary, which should be possible. To avoid this, move the shared code into the platform implementation, and export those symbols so that backends can use them. This adds some semi-public platform-specific API that can only be used by backends included with pugl. They are undocumented, subject to change at any time without a corresponding version change, and may not be used by third parties (for example by custom backends in an application).
2021-01-02Simplify clang-format configuration and format all codeDavid Robillard1-87/+84
2020-11-26Remove file documentationDavid Robillard1-5/+0
These will not be used in the Sphinx documentation, and most were self-explanatory and only there to make the Doxygen index look nice anyway. Where there was actually useful information, it has been preserved as regular comments.
2020-10-30Simplify header namesDavid Robillard1-1/+1
2020-10-30Move implementation source files to a conventional src directoryDavid Robillard1-0/+171
I think this attempt to be optionally header-only was misguided, particularly installing source code to the system include path. Typically anyone vendoring code just includes the repository and builds from there anyway. This commit moves all the implementation code to a typical src directory (Don't Be Weird). I still think there is some value in simple "inline" deployment, but that would be better achieved another way, like producing a single-file amalgamation that builds anywhere, ala sqlite.