图库: 修系统返回语义与打开册资源路径(M15)

- 返回手势:书库列表排除左缘 24px 系统返回带并清空残留拖拽态;library_go_up
  到 TF 根返回 0(app.c 退出 App),不再上溯系统目录;顶栏返回改为显式
  library_go_parent(访问放开,可越过 TF 根到 /)。lock 页继续自行消费返回。
- 打开册:缩略图源图改用预算解码(meow_img_load_file_dim,峰值数十 MB→~1MB);
  离开书库页停止后台探测/缩略图线程,避免与 open_book 争内存/FD;打开失败按
  errno 记日志,ENOMEM/EMFILE/ENFILE/EAGAIN/EINTR 自动重试一次;修 open_book
  自拷贝 snprintf 的未定义行为。
- 测试:test_browse_ui_host 增加 TF 根退出/顶栏上级/左缘不拖拽断言;新增
  test_open_book_host(封面图+含图子目录的父目录 → reader 打开的完整 UI 链路)。
This commit is contained in:
AskaEth committed 2026-11-05 13:03:20 +08:00
1 parent 5ac227b225
commit 3cbcaaaac1
7 files changed
+377 -13

No files matched your search

+2 -1
View File
@@ -38,7 +38,8 @@ typedef struct mr_page_ctrl {
/* ---- 书库页(ui/library/library.c) ---- */
meow_view *library_view_create(void);
int library_at_root(void); /* 1=当前在书库根(生产=MR_ROOT_DIR,宿主测试可改根) */
int library_go_up(void); /* 上溯父目录:1=已上移/提示停留,0=已在文件系统 "/"(app.c 据此退出) */
int library_go_up(void); /* 系统返回语义:逐级上移;TF 根/"/" 返回 0(app.c 据此退出) */
int library_go_parent(void); /* 顶栏显式「上级」:访问放开,可越过 TF 根到 '/' */
void library_on_tap(int x, int y);
void library_on_swipe(int dir, int dist); /* dist=SDK on_swipe 的位移量(UP/DOWN 用) */
void library_on_touch_down(int x, int y);