feat(tuku): 图库 M3 骨架——书库浏览/主题同步/阅读器与锁屏接缝

- 新增顶层 tuku/ 工程(package dev.tuku.app、二进制 tuku):app.c/internal 头/logic/ui 分层、app.json、build/pack 脚本
- 书库:从 TF 卡根浏览文件夹,含图目录=一本书;logic/library 纯 C 扫描+自然排序(page2<page10)
- 流式缩略图:后台线程解码+meow_img_downscale(96),首帧/滚动不阻塞;磁盘缓存 MeowData/<pkg>/cache(mtime 失效+LRU)
- 列表 meow_listview 虚拟化 + meow_scroll fling/snap;行=缩略图+目录名+页数
- 主题:全部语义色 + meow_theme_add_listener 即时重绘;明暗/风格族两态可读
- 导航:meow_view page push/pop、TopAppBar ⚙→设置;reader/settings/lock 最小桩
- 接缝:mr_reader_get/set_direction(默认 RTL)、lock_view_should_show()(桩 0)
- 宿主 gcc 测试 46 项 PASS;交叉构建静态 MIPS32r2 ELF、-Wall -Wextra 零警告
This commit is contained in:
AskaEth committed 2026-11-04 19:44:18 +08:00
1 parent c0396e40ce
commit bed6a95485
17 files changed
+1676

No files matched your search

+11
View File
@@ -31,6 +31,12 @@ MeowOS-SDK/
│ ├── ui/ # 每页一个 view 文件(home/demo/list/full/chrome)
│ ├── logic/ # 纯 C 业务逻辑(不依赖 meow_ui.h,宿主可裸测)
│ └── build_hello.sh # 构建 hello(链 meow_ui.a + libz.a + -lpthread)
├── tuku/ # 图库:漫画书库 App(M3 骨架:主题同步/目录浏览/阅读器桩)
│ ├── app.c # main + 装配 + meow_ui_run 回调路由 + 主题监听
│ ├── logic/ # 纯 C:目录扫描/自然排序、阅读方向状态(宿主可裸测)
│ ├── ui/ # library / reader / settings / lock 每页一个 view
│ ├── build_tuku.sh # 交叉构建(SDK 用 ${MEOW_SDK_DIR:-$HOME/Proj/MeowOS-SDK/sdk})
│ └── pack_tuku.sh # 出包 dev.tuku.app.mpk
└── docs/
├── APP_DEV_GUIDE.md # 第三方开发上手指南(环境 → 最小 App → 构建打包 → 签名安装 → 调试)
└── MEOW_APP_SDK.md # SDK 设计全量规范
@@ -46,6 +52,11 @@ cd sdk
# 2) 构建示例 App hello
cd ../examples/hello
./build_hello.sh # 产出 examples/hello/hello(静态 MIPS32r2 ELF)
# 3) 构建图库(SDK 用绝对路径,可用 MEOW_SDK_DIR 覆盖)
cd ../../tuku
./build_tuku.sh # 产出 tuku/tuku(静态 MIPS32r2 ELF)
./pack_tuku.sh # 产出 tuku/dev.tuku.app.mpk
```
## SDK 能力速览