redox-wayland-compositor/docs
Votre Nom 5f7587e79e 🎉 Phase 7.3 — curseur software validé runtime
Sprite curseur 16x16 ARGB dessiné par-dessus la composition après
`SurfaceRegistry::compose_into()`, avec alpha blending non
prémultiplié (`out = src + dst * (1 - src.a)`) et hot-spot
configurable.

Frontend additions :
- `cursor_surface_id` / `cursor_hot_x` / `cursor_hot_y` /
  `cursor_visible` dans `WaylandFrontend`
- `is_cursor: AtomicBool` dans `SurfaceData`
- `default_cursor_sprite()` : flèche hardcoded 16x16
- `blend_argb_over(src, dst)` avec fast paths a=0/a=255
- `draw_cursor<F: Framebuffer>(target)` : clip aux bords du fb,
  blit pixel par pixel
- `set_cursor_initial_position` / `set_cursor_position` /
  `cursor_position` publiques
- `wl_pointer.set_cursor` handler : store la surface client,
  marque `is_cursor = true`, l'exclut du Z-order (visible=false)
- `wl_surface.commit` lit `is_cursor` → si curseur, pas de
  raise/focus et reste invisible dans la composition normale
- `cursor_visible = true` au premier PointerMotion(Relative)

Binaire compositor :
- `set_cursor_initial_position(fb_w/2, fb_h/2)` au boot
- `frontend.draw_cursor(&mut output)` après `compose_into`
- timeout porté de 60s à 180s pour validation visuelle confortable

Test client SHM :
- timeout porté de 25s à 170s pour rester aligné avec le compositor

Validation runtime : 5 screendumps à 5 positions distinctes
prouvent que `draw_cursor` est appelé correctement quel que soit
`(cursor_x, cursor_y)`, dont 2 captures par-dessus la fenêtre
client SHM (overlay alpha-blended sur les bandes arc-en-ciel).

Note runtime : Redox n'a pas de driver USB tablet opérationnel
sous QEMU. `mouse_move` PS/2 du monitor QEMU ne produit pas non
plus de PointerMotion côté inputd. Validation faite en mode
programmatique via un cycle temporaire `set_cursor_position`,
retiré du binaire après screendumps. À investiguer ps2d/vesad
en phase 7.5 ou plus tard.

Doc complète : `docs/phase7-3-cursor.md`.

Leyoda 2026 – GPLv3
2026-05-13 09:06:56 +02:00
..
existing-redox-gui.md Initial commit: phases 1-3 du portage Wayland Rust pour Redox OS 2026-05-08 17:41:55 +02:00
phase4-display-backend.md 🎉 Phase 4 vraie validée visuellement : pixels custom plein écran 2026-05-09 10:46:20 +02:00
phase4-victory-1280x800.png 🎉 Phase 4 vraie validée visuellement : pixels custom plein écran 2026-05-09 10:46:20 +02:00
phase5-blue-screen-with-input.png 🎉 Phase 5 — input backend Redox validé runtime 2026-05-09 11:22:54 +02:00
phase5-input-backend.md 🎉 Phase 5 — input backend Redox validé runtime 2026-05-09 11:22:54 +02:00
phase6-3-blue-top.png 🎉 Phase 6.3 — display + input + compositor-core intégrés runtime 2026-05-09 12:20:04 +02:00
phase6-3-default-z.png 🎉 Phase 6.3 — display + input + compositor-core intégrés runtime 2026-05-09 12:20:04 +02:00
phase6-3-green-top.png 🎉 Phase 6.3 — display + input + compositor-core intégrés runtime 2026-05-09 12:20:04 +02:00
phase6-3-red-top.png 🎉 Phase 6.3 — display + input + compositor-core intégrés runtime 2026-05-09 12:20:04 +02:00
phase6-4-wayland-client-surface.png 🎉🎉🎉 Phase 6.4 — Wayland complet : un client externe affiche ses pixels 2026-05-09 13:30:05 +02:00
phase6-4-wayland-frontend.md 🎉🎉🎉 Phase 6.4 — Wayland complet : un client externe affiche ses pixels 2026-05-09 13:30:05 +02:00
phase6-compositor-core.md 🎉 Phase 6.3 — display + input + compositor-core intégrés runtime 2026-05-09 12:20:04 +02:00
phase7-1-xdg-shell.md 🎉 Phase 7.1 — xdg-shell minimal validé runtime 2026-05-09 14:34:45 +02:00
phase7-1-xdg-toplevel.png 🎉 Phase 7.1 — xdg-shell minimal validé runtime 2026-05-09 14:34:45 +02:00
phase7-2-input-routing.png 🎉 Phase 7.2 — wl_seat + wl_keyboard + wl_pointer routing input 2026-05-09 15:05:03 +02:00
phase7-3-cursor-over-window-200x150.png 🎉 Phase 7.3 — curseur software validé runtime 2026-05-13 09:06:56 +02:00
phase7-3-cursor-over-window-250x200.png 🎉 Phase 7.3 — curseur software validé runtime 2026-05-13 09:06:56 +02:00
phase7-3-cursor-pos-50x750.png 🎉 Phase 7.3 — curseur software validé runtime 2026-05-13 09:06:56 +02:00
phase7-3-cursor-pos-900x600.png 🎉 Phase 7.3 — curseur software validé runtime 2026-05-13 09:06:56 +02:00
phase7-3-cursor-pos-center.png 🎉 Phase 7.3 — curseur software validé runtime 2026-05-13 09:06:56 +02:00
phase7-3-cursor.md 🎉 Phase 7.3 — curseur software validé runtime 2026-05-13 09:06:56 +02:00
redox-wayland-primitives.md Initial commit: phases 1-3 du portage Wayland Rust pour Redox OS 2026-05-08 17:41:55 +02:00