aboutsummaryrefslogtreecommitdiffstats
path: root/src/internal.h
AgeCommit message (Collapse)AuthorFilesLines
2025-01-22Factor out puglIsValidPosition()David Robillard1-0/+4
2025-01-22Rename PuglViewSize to PuglAreaDavid Robillard1-1/+1
2025-01-22Make puglSetSizeHint() consistent with puglSetSize()David Robillard1-0/+7
In general, it's more convenient to have full-width integers as parameters, since C will promote any arithmetic on smaller types to them anyway. Using narrow types here, then, doesn't really make anything stricter, just forces an annoying cast when lots of warnings are enabled, which is likely unchecked. Better to handle it here, since it's more convenient, and the integer range checks the compiler can do aren't correct anyway (the max width/height is intentionally smaller than the max PuglSpan, so it can fit in a signed 16-bit integer).
2023-10-21Filter out corresponding modifiers from key eventsDavid Robillard1-0/+4
Platforms differ here, but it's meaningless to ask about the state of a modifier that's currently being pressed or released, so simply mask this out in general so it's easy for platform implementations to clean events up before dispatching them.
2023-05-12Factor out puglIsValidSize() and use consistent rules everywhereDavid Robillard1-1/+6
2023-05-12X11: Avoid deferring empty exposuresDavid Robillard1-5/+0
2023-01-14Add general string hint interfaceDavid Robillard1-0/+5
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-08Use ensureHint pattern everywhereDavid Robillard1-0/+4
2023-01-02Move attributes to a separate headerDavid Robillard1-0/+1
2023-01-02Factor out common realize checks and initializationDavid Robillard1-0/+4
2022-06-08Separate platform.h from internal.hDavid Robillard1-16/+2
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-08Separate private and public function implementationsDavid Robillard1-0/+65