feat: white-tone desktop + login crossfade + BUG-031 FAT chain fix + DESK-E texture panics
- BUG-031: fat32_io.h on-demand FAT sector read (FAT beyond 128KB cache walked OOB, font/wallpaper corrupted past first clusters); host unit test diff=0 - material pack: gen_textures.py wired into build.ps1, startMenuLogo.rgba packaged; missing wallpaper/logo/font now fatal (DESK-E02/E03/E04 red fatal screen) - login->desktop crossfade 16 steps, boot typewriter screen removed - IDE exit: Esc detaches and returns to desktop page - white theme: KS_* light palette, g_wf_light taskbar, hardcoded dark fills replaced - QEMU verified: labels/clock render, wallpaper + start logo loaded, zero spurious panic
This commit is contained in:
@@ -482,6 +482,17 @@ int handle_key(u8 sc) {
|
||||
if (sc == 0x01) {
|
||||
if (g_taskview) { g_taskview = 0; return 1; }
|
||||
if (g_ctx_open) { g_ctx_open = 0; return 1; }
|
||||
/* IDE 页:Esc = detach + 退回桌面页(IDE 退出通道) */
|
||||
if (g_page == 2) {
|
||||
if (g_ide_attached) {
|
||||
g_ide_attached = 0;
|
||||
g_input_forward_enabled = 0;
|
||||
ide_attach_invalidate();
|
||||
slog("ide detached (esc), input forwarding off");
|
||||
}
|
||||
page_switch(3);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
if (g_taskview || g_ctx_open) return 0; /* 模态期间吞掉按键 */
|
||||
|
||||
Reference in New Issue
Block a user