This document provides an overview and API reference for a UTF-8 utility module in the userland libc, including functions for decoding, encoding, and traversing UTF-8 strings.
* Adding keyboard layout (backend)
* Update settings.c with new keyboard tab
* Fixing keyboard icon && Fixing long loading time in settings.c
* Refactor of key handling for a larger compatibility with the keyboard layout
* Adding keyboard handler
* Udating ps2.c with the new logic
* Updating WM/kernel/userland with the new input system
* Fixing keycode range && Updating dead keys handling
* Add comments for explanation
* Update notepad & vm.c to parse utf-8
* Adding utf-8 parsing utils in libc && Update notepad.c
* Adding icon for icon settings
* Fixing a warning with double definition
* Adding new kb kayout: QWERTZ and DVORAK && Update new layout instrauction
* Add documentation for keyboard input subsystem
This document outlines the architecture and design of the input subsystem, focusing on keyboard input processing, driver responsibilities, keycode representation, and keymap functionality.
---------
Co-authored-by: boreddevnl <chris@boreddev.nl>
Introduce process lifecycle and POSIX-like features: add parent_pid, pgid, exited/exit_status, signal state and handlers, waitpid/reap, and an exec-replace function. Refactor file descriptor handling to use fd_kind/fd_flags with reference-counted file refs and in-process pipes; implement open/read/write/close/seek/tell/size/dup/dup2/pipe/fcntl semantics and O_* flags. Add syscall handlers for exec, waitpid, kill/signal, sigaction, sigprocmask, sigpending, meminfo/ticks and map many SYSTEM_CMD_* constants; deliver signals from the syscall path. Cleanup/terminate logic updated to free resources correctly and initialize kernel/user processes with new state. Misc: minor syscall/table renames (wallpaper), helper utilities (process_close_fd_inner, process_init_signal_state) and paging/stack handling for exec.