| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 12 days | Unify core and runner events into struct yasl_event | Berke Güzel | |
| The core input queue and the yasl_run() runner each had their own event type, and the runner translated one into the other. Both now share struct yasl_event in <yasl/yasl.h>: yasl_surface_poll_event() returns the same events the app event callback receives, so the runner forwards them unchanged. Pointer input becomes POINTER_DOWN/UP/MOTION/SCROLL/LEAVE with a named yasl_pointer_button and a motion delta computed in the input queue. TEXT, PASTE and DROP share one text payload, scale changes fold into WINDOW_RESIZE, and every event carries a monotonic time_ns. yasl_surface_set_mouse_mode() is replaced by yasl_surface_set_pointer_mode(); no backend implements relative mode yet. The export check now only counts YASL_API declarations, so function pointer fields returning enum yasl_app_result are not mistaken for exports. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> | |||
| 12 days | Simplify surface state, examples, and library installation | Berke Güzel | |
| 12 days | rename and simplification | Berke Güzel | |
| 12 days | fix(app): free app surfaces only when no callback runs | Berke Güzel | |
| app_runner_unregister_surface freed the runner's entry at once. A frame or event callback that destroyed its own surface returned into code that still read that entry: app_runner_surface_draw read as->pacing, and the input loop read as->surface and as->next. yasl-app-test hit this under ASan. Unregister now only clears the entry's surface. The run loop frees dead entries before each iteration and at shutdown, when no callback runs. The unused frame_in_progress flag is removed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> | |||
| 13 days | fix(app): destroy remaining surfaces before closing display on shutdown | Berke Güzel | |
| 13 days | feat(notepad): add file open/save, tab indent/unindent, clipboard, search, ↵ | Berke Güzel | |
| and drag-and-drop | |||
| 13 days | feat: implement modern Approach A app runner, unified events, notepad, and ↵ | Berke Güzel | |
| game examples | |||
