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
This commit is contained in:
1 parent
0294553096
commit
41427fdcb3
6 files changed
+102
-46
No files matched your search
@@ -721,8 +721,8 @@ int meow_font_effective_tier(int app_tier);
|
||||
int meow_font_ensure(void);
|
||||
void meow_font_reload_multifont(void);
|
||||
int meow_font_resolve_path(const char *ref, char *out, int olen);
|
||||
void meow_font_scan_presets(void);
|
||||
void meow_font_scan_presets_root(const char *card_root);
|
||||
void meow_font_scan_presets(int verify_sha);
|
||||
void meow_font_scan_presets_root(const char *card_root, int verify_sha);
|
||||
int meow_ipc_init(void);
|
||||
void meow_ipc_process(void);
|
||||
/* M4:IPC 连接存活查询(熔断广播投递前判连接未断;util.c ipc_conns 表查 fd)。 */
|
||||
@@ -783,6 +783,10 @@ int s_net_get(const srow_t *r, char *buf, int len);
|
||||
void s_net_open(const srow_t *r);
|
||||
void s_net_refresh(void);
|
||||
void s_net_sync_from_sys(void);
|
||||
/* M3:设置页异步网络刷新 —— kick 重置步骤机并触发扫描(非阻塞);pump 每步一个
|
||||
* 有界 popen,返回 1=数据可能更新(调用方重绘)。run_settings_page 主循环逐步骤驱动。 */
|
||||
void s_net_refresh_kick(void);
|
||||
int s_net_refresh_pump(void);
|
||||
void s_net_toggle_bt(int on);
|
||||
void s_net_toggle_wifi(int on);
|
||||
|
||||
|
||||
Reference in new issue
Block a user