aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2024-10-01Suppress new warnings in clang and clang-tidy 18David Robillard8-8/+17
2024-10-01Remove redundant "inline" specifierDavid Robillard1-4/+4
2024-07-13MacOS: Fix mouse wheel scroll speedDavid Robillard1-5/+11
This just happens to be the factor that results in one tick of a conventional mouse wheel being a change of 1.0 "lines" as on other platforms (at least for me, hopefully everywhere). Moving a wheel quickly does result in quite a lot of acceleration on MacOS though, so more refinement might be needed here for consistent event handling across platforms.
2024-07-13MacOS: Fix expose event coordinatesDavid Robillard1-1/+4
2024-07-13X11: Avoid setting PBaseSize hints for top-level windowsDavid Robillard1-1/+2
By my reading of the spec, pugl's use of this hint was correct. However, many window managers break when it's set and use that size as the minimum (even when an actual minimum is set). This seems to be a bug based on a misreading of the spec which has been copy-pasted across many small window manager projects over the years. Not exposing the default size is unfortunate, but apparently nobody misses features based on it and there's nothing we can do about it here, so just deny the window manager the information entirely. The hint is still set for embedded views because (for example) plugin hosts need this information.
2024-07-12Windows: Support building with UNICODEDavid Robillard3-20/+37
2024-06-10Fix build and tests with optional X11 features disabledDavid Robillard7-28/+34
2024-06-10Suppress new warnings in clang-tidy 17David Robillard1-0/+2
2024-06-10Avoid std::endlDavid Robillard1-3/+3
2023-11-11MacOS: Fix Cairo rendering on some systemsDavid Robillard1-3/+1
CGContextConvertSizeToUserSpace returns a negative height on some systems and a positive height on others. I have no idea why, but only basic scaling is required here, so just avoid this function entirely.
2023-11-11Add support for Num, Scroll, and Caps LockDavid Robillard6-26/+49
2023-11-11Add a special symbol for the tab keyDavid Robillard2-0/+3
2023-11-11MacOS: Support left/right shift, control, and option keysDavid Robillard1-4/+6
2023-11-11Consistently use trailing commas in enumsDavid Robillard1-10/+10
This reduces diff noise and merge conflicts, and at least basic C99 support is deeply required anyway.
2023-11-11Suppress new warnings in clang-tidy 16David Robillard4-6/+11
2023-11-11Remove redundant default values from meson_options.txtDavid Robillard1-10/+10
2023-10-22X11: Only call XSetTransientForHint for valid windowsfalkTX1-1/+1
Signed-off-by: falkTX <falktx@falktx.com>
2023-10-21Fix potential memory leaks due to realloc() failureDavid Robillard2-31/+55
2023-10-21Suppress clang-tidy C++ warningsDavid Robillard2-0/+2
2023-10-21Fix whitespaceDavid Robillard1-1/+2
2023-10-21MacOS: Fix horizontal scroll directionDavid Robillard1-1/+1
2023-10-21X11: Use PUGL_INIT_STRUCT to initialize char arraysfalkTX1-3/+3
2023-10-21X11: Fix key press event key when control is pressedfalkTX1-2/+2
2023-10-21Remove spurious semicolonDavid Robillard1-1/+1
2023-10-21Filter out corresponding modifiers from key eventsDavid Robillard5-8/+38
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-10-21Windows: Fix left and right key distinctionDavid Robillard1-6/+6
2023-10-21Print modifiers for key events in test and example programsfalkTX1-10/+12
2023-10-21Clean up includesDavid Robillard5-1/+4
2023-10-21Suppress warnings in clang 16David Robillard1-0/+4
2023-10-16Fix GCC 13 buildDavid Robillard1-2/+2
2023-10-07Fix puglGetTime() on Apple SiliconDavid Robillard1-3/+5
The floating point precision of these chips is... strange.
2023-10-07Fix warnings on MacOSDavid Robillard1-0/+1
2023-09-23Format meson.build files with muonDavid Robillard8-35/+59
The less time wasted with manual code formatting, the better.
2023-05-29Add support for numeric keypad and simplify keyboard handlingDavid Robillard5-128/+256
2023-05-29Add documentation for key symbolsDavid Robillard1-43/+40
2023-05-29Deprecate redundant key symbolsDavid Robillard3-17/+21
2023-05-27Make explicit enumeration constants unsigned wherever possibleDavid Robillard1-9/+9
2023-05-27Print special keys in verbose test outputDavid Robillard1-4/+96
2023-05-27Add convenience symbols for enter and space keysDavid Robillard1-1/+3
2023-05-27Remove sanitize row on CIDavid Robillard1-13/+0
Since the tests unfortunately aren't run on CI (because most of them require graphics), this row wasn't actually doing any useful testing.q
2023-05-27X11: Fix cursors on systems where XcursorGetTheme() doesn't workDavid Robillard1-2/+3
2023-05-27X11: Add options for XCursor, XRandR, and XSync supportDavid Robillard2-15/+67
2023-05-27Use files() for headers in mesonDavid Robillard4-10/+6
2023-05-27Remove dead meson codeDavid Robillard2-10/+0
2023-05-27Separate pugl/glu.h from pugl/gl.hDavid Robillard6-12/+27
The GLU library is often shipped in a separate package, so it's possible to have a system with GL, but no GLU headers. Since use of GLU isn't universal (none of the examples use it), its inclusion can break builds that would otherwise work. So, move it to a separate wrapper header so this can be avoided.
2023-05-26Fix inconsistent whitespaceDavid Robillard1-3/+3
2023-05-23Improve introduction and deployment documentationDavid Robillard3-23/+64
2023-05-22Speed up and improve reliability of timer testDavid Robillard1-3/+3
2023-05-22Test that multiple timers with different frequencies work correctlyDavid Robillard1-41/+100
2023-05-22X11: Fix puglStopTimer() with multiple timersThomas Brand1-5/+3