AskaEth
|
41427fdcb3
|
launcher: 进设置页不再同步跑串行网络 popen 与逐套字体 sha256(点设置卡≥5s 修复)
- 设置页入口 s_net_sync_from_sys() 改为 toggle 同步(快)+异步 s_net_refresh_kick();
wifi/bt 状态与列表由 run_settings_page 主循环逐步骤 s_net_refresh_pump() 填充
(每步一个带超时 popen、~150ms 一步),draw 用 g_net_* 缓存,数据变化即 need_paint
→ 入口不再被 wpa_cli/bluetoothctl/hcitool 5 条串行 popen(各 1.2~2.5s 有界超时)拖住。
- 进设置页字体重扫 meow_font_scan_presets(0) 跳过逐套 sha256(gbk/full 套数 MB,
逐套双 sha256 真机耗数秒,入口卡顿主因之一);完整性校验保留给启动/热插拔全量(verify=1)。
- s_net_refresh() 保留同步语义(kick+drain) 供通知中心等调用方;WiFi/BT 子页返回、
网络下拉后改 kick(由主循环承担异步填充)。
- 设置入口加毫秒级分段日志(font rescan / net toggle-sync+kick / page shown)供真机取证。
- 交叉 -Wall -Wextra 0 warning;launcher 宿主测试全 PASS。launcher md5 fbc78c62
|
2026-09-02 03:18:36 +08:00 |
|
MeowOS
|
4e3f41a5a3
|
M2.90: MIUIx 风格包落地 + ui.style 一键切换闭环
- meow_ui_theme.c: 为 MEOW_STYLE_MIUIX 实现整套 light/dark 配色(暖基面+小米橙 primary
0xF57200/0xFF8C4A+蓝 tertiary;圆角 20/卡片 28、间距 12、细描边 1),与 MD3 可感知差异
- display.background 随 style×mode 派生 MIUIx 色板(bg_surfaces 增 style 参;图片背景保持各 style 默认面)
- meow_settings.c g_defs: ui.style 值域 'md3,miui'→'md3,miuix'(label Material You,MIUIx);
apply_value SET_ENUM 对存量 'miui' 兼容映射为 miuix
- settings_page s_commit: ui.style 分支 → meow_ui_set_style + paint_sb_right + meow_dirty_full 即时换肤
- font_theme s_ui_theme() 接 ui.style + MIUIx dark/light 表;main_menu 背景签名含 ui.style + 纯色底随 style 换族
- 宿主编译 -Wall -Wextra 0 warning;test_meow_ui_theme 四套 s×m 渲染全 PASS;
test_meow_ui_widgets/test_sdk_fixes 全 PASS(MD3 行为一致)
- 产物 md5: meow_ui.a a4231296 / launcher 9f97af1b(未部署走固件)/ hello e5527578 /
files 993e41ca / ncm 6b9eeb0f(三 App 已 .new+mv 热更到卡, 设备 md5 已核一致)
- 待后续: 状态栏图标集仍 MD3 一套(sb_icons.h 无 per-style 换集接口, MIUIx 仅换配色);
App 进程 SDK 主题缓存 g_loaded 不随 settings 外部改写重读, 运行中 App 下次启动才换肤
|
2026-08-31 20:17:51 +08:00 |
|
MeowOS
|
228e9e79e0
|
fix(launcher): App暴毙后卡死根因——execpipe 裸阻塞 read 改 poll+2s超时(agent-214) + ams_drain_stdout 64KB有界 + reap_wait兜底5处裸waitpid + watchdog关继承fd + font_sha256_file popen改有界 + 既有警告清理; fix(ncm): cookie盐不随包名(旧登录态可解)
launcher 97c1b222→333d6f53; ncm→1124dbf2; 宿主harness stall/ok/orphan全过
|
2026-08-31 13:36:23 +08:00 |
|
MeowOS
|
3e414176c3
|
fix(launcher): 字库启动竞态两连修 — ①卡就绪(热插拔轮询)后重扫字库 presets(开机早扫时卡未挂载只剩默认项,App 大字库声明落空→豆腐块)②扫描根目录不可读且仅默认项时不写 index(修开机覆盖掉卡上18条索引)
launcher b33da20a→9ae64777; test_font_tier PASS
|
2026-08-31 11:12:55 +08:00 |
|
MeowOS
|
3fd4726198
|
feat(launcher): 字体扫描迁移三级目录 (agent-193) — <family>/<weight>/<tier>/ 支持(两级向后兼容); FONT_PRESETS_MAX 17→64; 设置页 family→weight 两级不变,同weight多tier按加载大字库开关选档(关=common优先/开=gbk优先); index 落盘含三级条目
launcher ab8e610f→d3cae88b; test_font_tier/test_font_weight PASS
已知缺口: SDK meow_font.c MEOW_FONT_INDEX_MAX=32 截断(>32套需同步提); S_NET_MAX=8 family 上限; default 字体仍两级
|
2026-08-31 05:09:42 +08:00 |
|
MeowOS
|
e6f0b665e3
|
refactor(launcher): 拆分 meow_launcherd.c(9778行)→meow_launcherd/ 多文件(agent-149)
- 14 模块 .c + meow_launcher_internal.h(642): util/font_theme/fb_compositor/settings_page/power_menu/notif_center/app_launcher/main_menu/audio/backlight/net/keys/about/statusbar; meow_launcherd.c 已删
- 按行逐字搬移(0-diff), 118函数提升非static+47组extern(内部头), #if0退役区不编入(源码留.pre_split.bak)
- 关于本机小改: 作者 AskaEth/17 + info/item[13]防越界 + s_dd_modal 超高滚动(clamp/触摸滚动/音量键跟随/裁剪, 仅超高启用)
- build_launcher.sh 编译列表→模块; 文档/注释引用 meow_launcherd.c→模块/目录
- 编译0warning/-Wall -Wextra告警集与原文一致(77条无新增)/qemu-mipsel冒烟一致(--scan/--sysdump); launcher=c0799357(505KB; md5因多文件重编译与原文异,非回归依据)
- 备份 meow_launcherd.c.pre_split.bak/meow_launcherd.pre_split.bak; M2.69(0.7.64)已推卡并用户验证OK
|
2026-08-30 21:38:30 +08:00 |
|