redox-wayland-compositor/crates/redox-wl-test-compose-static/Cargo.toml

10 lines
267 B
TOML
Raw Normal View History

🎉 Phase 6.3 — display + input + compositor-core intégrés runtime Captures preuves dans docs/phase6-3-*.png : 4 frames qui prouvent visuellement que raise change l'ordre Z et que compose_into propage le résultat à l'écran QEMU : - default-z.png : 3 surfaces overlap, blue top (créé en dernier) - red-top.png : sendkey 1 → raise(red) → red couvre vert et bleu - green-top.png : sendkey 2 → raise(green) → green couvre tout dans sa zone - blue-top.png : sendkey 3 → raise(blue) → retour visuel à initial Modifications : compositor-core (commit dbf3bff → maintenant) : - + iter_z_order_front_to_back() : utile pour hit testing - + hit_test(x, y) -> Option<SurfaceId> : trouve la surface visible la plus haute qui contient le point - + 4 tests unitaires : 27 total / 27 pass natif (0.00s) redox-wl-display : - + dep redox-wl-compositor-core - + impl Framebuffer for RedoxOutput (délègue à pixels_mut + width/height) bin redox-wl-test-compose-static (190 lignes) : - ouvre RedoxOutput + take_crtc - crée InputBackend partagé - 3 surfaces ARGB unies (rouge/vert/bleu) avec overlap centré - boucle event : '1'/'2'/'3' raise resp. red/green/blue - clic souris → hit_test puis raise (motion non testé sans usb-tablet) - ré-render seulement si raise → économie CPU - present_with_takeover() à chaque iter pour tenir le CRTC Validation QEMU automatisée : sendkey 1/2/3 + screendump entre chaque. Les 4 PNG montrent l'ordre Z évoluer correctement. Image Redox restaurée à boot Orbital normal. docs/phase6-compositor-core.md : compte-rendu 6.1-6.3 complet, architecture, dépendances, API, limitations, plan 6.4. Phase 6.3 close. Reste 6.4 (frontend Wayland : wl_compositor + wl_shm + xdg-shell mappés vers compositor-core, damage tracking, frame callbacks). Estimé 2-3 sessions. Leyoda 2026 – GPLv3
2026-05-09 12:20:04 +02:00
[package]
name = "redox-wl-test-compose-static"
version = "0.1.0"
edition = "2021"
[dependencies]
redox-wl-display = { path = "../redox-wl-display" }
redox-wl-input = { path = "../redox-wl-input" }
redox-wl-compositor-core = { path = "../redox-wl-compositor-core" }