- M7 launcher 重写 5 期(虚拟化宫格/meow_theme 单一权威/横幅动画/自定义 PIN 键盘) - OOM 通用化(cachegov 上收 SDK)、自动切歌根治、meowpanel jv_free 泄漏修复、Hello 滚动卡顿修复 - ncm 歌词 UI / 媒体通知封面 / 封面分辨率 640 - 5 bug 修复:ncm 后台化 UI 叠层+点击穿透、再进 ncm 桌面叠层、播放页新旧 UI 叠层抢刷脏区(meow_ui_gfx 恢复边沿整帧重画)、PIN 亮屏亮度跳(keys.c meow_panel_on 按 settings_brightness_clamped 恢复)、通知中心封面显歌单封面(cover.c save_cover_raw 加 is_song + 命中块守卫) - 四 App 统一重链新 meow_ui.a 51caee4a;M6.19=0.8.19 固件 2d2331f2 推卡自刷验收全绿
44 lines
1.5 KiB
C
44 lines
1.5 KiB
C
/* app/progress.h — 进度持久化:`MeowData/os.meow.reader/progress/`(每书 = path hash 文件)。
|
||
*
|
||
* 内容(文本,可读可调):v=1 / seg=<段> / ch=<字符偏移> / fs=<字号> / ls=<行距%> / ts=<unix>。
|
||
* 锚定是(段,字符偏移),与字号无关 → 换字号书签不失效(READER_ENGINE_NOTES §6.3)。
|
||
* 无 SDK 之外依赖;目录推导:MEOW_DATA_DIR(launcher 注入 <TF>/MeowData/<pkg>/data)去皮 /data →
|
||
* <TF>/MeowData/<pkg>,接 "progress";无 env(宿主/无卡)回退 /tmp/meowcfg_<pid>/progress。
|
||
*/
|
||
#ifndef RDPROG_H
|
||
#define RDPROG_H
|
||
|
||
#include <stddef.h>
|
||
#include <stdint.h>
|
||
|
||
#ifdef __cplusplus
|
||
extern "C" {
|
||
#endif
|
||
|
||
typedef struct rdprog {
|
||
int valid; /* 1=有档 */
|
||
int seg;
|
||
int32_t ch;
|
||
int fs;
|
||
int ls;
|
||
int enc; /* R3:显式文本编码(rd_enc_t);-1=自动(未手动选) */
|
||
uint64_t ts; /* 最近阅读 unix 秒 */
|
||
} rdprog;
|
||
|
||
/* 组装 progress 目录路径并 mkdir -p。成功 0(out 填目录绝对路径);负值错误。 */
|
||
int rdprog_dir(char *out, int outsz);
|
||
|
||
/* 由书路径算 hash 文件名(FNV-1a 32bit hex)写 out(≥20 字节)。 */
|
||
void rdprog_hash(const char *book_path, char *out, int outsz);
|
||
|
||
/* 读进度:1=有档(填 p);0=无/不存在;负值=IO 错。 */
|
||
int rdprog_load(const char *book_path, rdprog *p);
|
||
|
||
/* 写进度。0=成功;负值=IO/无法建目录(不崩)。 */
|
||
int rdprog_save(const char *book_path, const rdprog *p);
|
||
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|
||
#endif /* RDPROG_H */
|