Repository navigation
Releases
Releases · Amwidtf/manga-stack
v0.0.1-alpha.6
变更
- 阅读器取消双击缩放:原 320ms 双击判定窗口让点按手感发涩,现全部点按零延迟生效(翻页、呼出工具栏);图片缩放只保留双指捏合(捏合后可单指拖动)
English release notes: CHANGELOG.en.md
v0.0.1-alpha.5
变更
- 已知问题处理:软键盘弹出环境的兜底——底部弹层不再锚定屏幕底边,改为在键盘上方的安全区域居中展示,输入行保持在屏幕中段,任何键盘行为异常的设备上都不会被遮挡
English release notes: CHANGELOG.en.md
v0.0.1-alpha.4
修复
- 已知问题修复:软键盘弹出时底部弹层在个别机型上仍被遮挡——输入法 insets 现由原生侧直接作用于 WebView(视图随键盘物理收缩),不再依赖 WebView 自身的键盘视口行为
English release notes: CHANGELOG.en.md
v0.0.1-alpha.3
修复
- 已知问题修复:软键盘弹出时底部弹层在部分机型上仍被输入法遮挡——布局视口不随键盘收缩的 WebView 上,弹层改为跟随可视视口定位,自动抬到键盘上方
English release notes: CHANGELOG.en.md
v0.0.1-alpha.2
修复
- 安全区补偿存在单位错误:原生注入的是物理像素,CSS 变量按 CSS 像素使用,高密度屏(约 2.75–3 倍缩放)上补偿被等比放大——底部导航、阅读器在系统栏上方留出数倍死区(Mate60RS 级别设备约 150px 多余空白)。现注入前已按屏幕密度换算
English release notes: CHANGELOG.en.md
v0.0.1-alpha.1
修复
- Android 15(targetSdk 35)强制 edge-to-edge 后,页面顶部被状态栏遮挡——原生侧把系统栏真实 insets 注入为 CSS 变量(
--safe-top等),Web 侧安全区一律取max(env(...), var(...));移动端顶部标题栏与阅读器工具栏改为 min-height,不再被安全区内边距挤压;阅读器全屏容器同样带安全区内边距,漫画画面从状态栏下方开始 - 软键盘弹出时不再遮挡底部内容——viewport 增加
interactive-widget=resizes-content - 底部抽屉(Sheet)避开手势条;顶部通知避开状态栏;设置页「清除全部应用数据」按钮长文字允许换行不再溢出
变更
- 阅读器(翻页模式)移除沉浸阅读时的悬浮页码——遮挡画面,页码信息由底部工具栏提供
- 章末「下一章」改为按需浮出:到达末页不打扰(最后一页完整可见),仍在末页向后翻(点按或滑动)时浮出「本章完」与「下一章」,任意点击收起
English release notes: CHANGELOG.en.md
v0.0.1-alpha
首个内部预发布版本。自此项目改用 SemVer 预发布号(0.0.x-alpha)作为内部版本,直到达到可公开发布 0.1.0 的程度;更早的 1.x 条目为开源前的历史版本名,保留备查。本构建合并了开源仓库初始化、源配置化改造、多源并行 / 内置更新 / 下载管理合入。
新增
- 开源仓库初始化:MIT 许可证、CONTRIBUTING / CODE_OF_CONDUCT / SECURITY、issue 与 PR 模板、CI(Web 端 lint+build,Android assembleDebug)
- 协作文档:
AGENTS.md、docs/DEVELOPMENT.md、docs/CODE_STYLE.md - 双语文档:README(中文为主,另有
README.en.md)、CONTRIBUTING(英文为主,另有CONTRIBUTING.zh-CN.md) - 源配置化:App 不再内置源,内置站点驱动与自定义规则引擎均以可导入的
SourceConfig配置接入 - 设置页源管理重做:启用/停用开关;删除需确认,并级联清除该源的订阅、历史与离线缓存;镜像类驱动一键测活;配置导入(自动识别 JSON / Base64)与导出(复制 JSON / Base64)
- 多源并行:源按开关启用、可同时开启多个;发现页按源横向分区展示,跨源搜索全部已启用源
- 书架:封面来源徽标,混合来源订阅列表支持按来源筛选
- 内置更新:设置页对接 GitHub Releases 检查更新,带发布说明;应用内下载 APK(进度条)并调起系统安装器——
src/lib/update.ts+src/lib/native.ts桥接原生插件MangaStackPlugin(下载到files/updates,FileProvider 安装) - 更新频道:稳定 / 尝鲜双频道,预发布构建默认尝鲜
- 下载管理独立成页:漫画缓存与更新安装包移出设置页——封面网格(可切列表)、逐章 / 整部 / 清空删除、管理模式多选删除
- 历史按漫画分组重做:默认网格、可展开列表、一键续读、管理模式多选删除
- 封面自愈:历史分组缺失封面时从书架或源(详情请求,退回标题搜索)回填;占位用标题文本填充而非裂图图标;瞬时加载失败自动重试后才定格
- 阅读器章节目录抽屉:定位当前章、正倒序切换
- Service Worker 离线页缓存:跨域图片 cache-first,重读零流量;加载失败自动清缓存并重试
- 一键恢复出厂:清除全部应用数据(订阅、历史、设置、缓存、已下载安装包)
- 发布工程:
scripts/bump-version.mjs同步三处版本号(package.json / appmeta.ts / build.gradle);推送v*tag 触发发布工作流,用 secrets 签名 APK 并发布到 GitHub Releases - 本地漫画库:从设备导入 ZIP/CBZ 压缩包或图片文件夹(Android),导入即入书架成为本地源;设置页可管理,删除时级联移除其订阅与历史
- 路由级代码分割(懒加载),首屏 chunk 回落至 500 kB 告警线以下
变更
- 内置站点驱动改为配置驱动的工厂函数(每站一个
make*工厂);注册表由applySourceConfigs依据持久化的sourceConfigs重建,保持「渲染前同步注册 + 指纹幂等」 - 设置存储 v2 → v3 → v4 迁移:旧的激活源字段、各驱动的线路设置与自定义规则合并进
sourceConfigs+activeSource;只迁移订阅 / 历史 / 旧激活源实际引用过的内置源,全新安装零源启动;v4 增加兼容路径,把旧版 K3 式enabledSources配置转换为现行结构,覆盖升级不丢源 getSource(id)改为可返回Source | undefined:书架检查更新跳过已删除的源,详情 / 阅读页各有空态兜底- MangaDex 语言 / 内容分级偏好改为存在已启用的 MangaDex 配置时才显示(此前为全局显示条件)
- 全新安装默认聚焦本地漫画阅读体验,发现页与在线源管理默认不显示
修复
- 跨章跳转不再保留上一章的页码——页码状态按章节纪元盖章,过期更新一律忽略
- Zoomable 符合 react-hooks v7 规则(ref 写入移入 effect;
touchAction由状态推导) package-lock.json源地址统一为registry.npmjs.org- ESLint 基线转绿(shadcn/ui vendored 文件豁免 fast-refresh 纯函数规则)
- 阅读器翻页热区(左右 30%)不再参与双击缩放判定;双击增加 60px 位置阈值,两次远距离快速点按不再误判为双击
- 底部导航栏与系统手势条重叠——增加安全区间距
- 系统返回键直接退出应用:补齐
@capacitor/app原生侧同步(capacitor.plugins.json/ capacitor gradle 接线),恢复应用内返回导航 - 设置页本地漫画条目指向失效的
/detail/路由——改为/manga/
安全
- 发布签名凭据从
android/app/build.gradle迁出至不入库的android/key.properties;缺失时 release 构建回退 debug 签名
English release notes: CHANGELOG.en.md