Nine modules across three commits — the Lumen desktop crosses from "windows on a framebuffer" into a real workspace.
Menu bar + icon grid + GPU glyph atlas (bcdbc07)
wm_menu.sg— the Lumen top-strip menu bar with dropdown menus. WMMENU-PASS.wm_iconview.sg— icon grid view for files and apps, with selection state. WMICONVIEW-PASS.font_glyph_cache.sg— a GPU glyph atlas: rendered glyphs are cached in a texture atlas, so text drawing is a textured-quad blit instead of a per-frame rasterisation. This is the throughput unlock for text-heavy views (the icon grid, the menu bar, the terminal). FGCACHE-PASS.
Resolution negotiation + wallpaper + DPMS (a50eab0)
fb_resolution.sg— queries the display's supported modes and picks the best fit. FBRES-PASS.wm_wallpaper.sg— a desktop wallpaper layer composited beneath every window. WMWALL-PASS.vid_dpms.sg— DPMS display power management: standby, suspend, off. The Pi 3 floor honours it where the panel supports it; graceful no-op otherwise. VIDDPMS-PASS.
Clipboard + screenshot + tooltips (074435c)
wm_clipboard.sg— a cross-app clipboard. Copy/paste flows through a cap-scoped channel between Lumen apps — an app can only read the clipboard it's been granted. WMCLIP-PASS.vid_screenshot.sg— real-hardware screendump: writes the live LFB to a file. Another path satisfying the Director standing rule that every test pass ships a QEMU screendump. VIDSSHOT-PASS.wm_tooltip.sg— hover tooltips with delayed-show on pointer dwell. WMTOOLTIP-PASS.
Every module verified with a screendump per the standing rule. The Lumen desktop now has a menu bar, icons, a wallpaper, a clipboard, tooltips, resolution negotiation, and power management — the workspace primitives a usable desktop needs, all GPU-first with the software-2D floor underneath.