summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
13 daysfeat: cross-platform pen pressure, tilt, and stylus handlingBerke Güzel
- Hook up Cocoa tablet, stylus, and Force Touch pressure/tilt to push_pointer - Ensure Wayland tablet tool pressure resets cleanly on tool up - Visualize pressure-sensitive brush scaling and telemetry in simple_window
13 daysopt: shrink input event to 48B, pack mouse event to 32B, and shave 2KB off ↵Berke Güzel
yasl_surface - Compact yasl_mouse_event from 36B to 32B (half a cacheline, 0 holes) - Compact yasl_input_event from 56B to 48B (0 holes) - Reduce yasl_surface by 2,048 bytes (shaving 32 full cachelines per surface) - Optimize UTF-8 sanitize with vectorized validation fast-path - Fast-path MIME prefix match in clipboard transfers
13 daysopt: compile-time locked LUTs and branchless SIMD/ALU primitivesBerke Güzel
- Replace buffer allocation branching loop with compile-time locked 24-byte LUT indexed by (cur & 3) - Use hardware lrint rounding and array-indexed pointer offsets for scroll axes - Replace press queue button/kind conditionals with branchless bitmasking and 1:1 identity casting - Make display_has_immediate_work evaluate state flags with bitwise ALU instead of short-circuit branches
13 dayscore: optimize struct layouts, eliminate branches, and fix event loop dispatchBerke Güzel
- Fix Wayland event loop lockout by properly decoupling read arming and adding poll-backed dispatching - Support standalone display lifecycle without requiring caller to manage a loop - Eliminate alignment holes across yasl_surface, yasl_display, seat, touch_point, and conn_drag using pahole - Replace branching state/button decoders with compile-time locked LUTs and branchless bitwise operations - Accelerate UTF-8 validation with 64-bit word scanning for ASCII runs
14 daysbuild: remove is_default from test setup for subprojectsBerke Güzel
14 daysbuild: add test setups for asan, tsan, msanBerke Güzel
14 daysbuild: declare dependency and override for subprojectsBerke Güzel
14 daysinitial: Yet Another Surface Library (YASL) 0.1.0Berke Güzel
A minimal, modern desktop window surface library in C. Supports Wayland on Linux and Cocoa/Metal on macOS with presentation timing, fractional scaling, IME, and CSD.