diff options
| author | salmonik <salmonik@tuta.io> | 2026-08-17 18:56:04 +0200 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-08-17 18:56:04 +0200 |
| commit | 5558e3509d020a0e021a77f0617044497b2f2aee (patch) | |
| tree | cd7b6cee9f7c327f9fae7ad9ac27602d1a97b222 /rsdos/src/main.rs | |
| parent | USB2/1.1 (EHCI/UHCI) drivers + real-hardware bring-up hardening (diff) | |
| download | rs-dos-5558e3509d020a0e021a77f0617044497b2f2aee.tar.gz rs-dos-5558e3509d020a0e021a77f0617044497b2f2aee.zip | |
Windowed GUI: wm module, input routing, and the paint app
- Add the wm window-manager facility per ADR 0004: overlapping
pixel-surface windows, damage-rectangle compositing, WM-drawn title
bar, focus/minimize/close, and F1-F4 keybindings
- Add gop shadow compositing primitives and vt::repaint_region so the
console stays layer 0 beneath windows
- Route mouse (absolute coords, press/release edges) and keyboard
(focus-aware input pump) to the focused window
- Add the rspaint drawing-program crate (pen, 8 colors, clear) and shell
draw/windows/restore commands
- Extend TaskMsg with AppMouse/Focus/Close and document the design in
CONTEXT.md + ADR 0004
Diffstat (limited to '')
| -rw-r--r-- | rsdos/src/main.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/rsdos/src/main.rs b/rsdos/src/main.rs index 0e159e6..89df5ea 100644 --- a/rsdos/src/main.rs +++ b/rsdos/src/main.rs | |||
| @@ -418,6 +418,11 @@ pub unsafe extern "efiapi" fn efi_main(image_handle: Handle, system_table: *mut | |||
| 418 | // later, and prints the exact field values when it is. | 418 | // later, and prints the exact field values when it is. |
| 419 | rsnix::vt::debug_verify(); | 419 | rsnix::vt::debug_verify(); |
| 420 | 420 | ||
| 421 | // Windowed GUI: initialise the window manager and its input pump. | ||
| 422 | // The console (vt) stays layer 0; GUI apps are windows composited on top. | ||
| 423 | rsnix::wm::init(); | ||
| 424 | rsnix::wm::spawn_input_pump(); | ||
| 425 | |||
| 421 | shell::run(); | 426 | shell::run(); |
| 422 | } | 427 | } |
| 423 | 428 | ||
