Commit Graph
7532 Commits
Author SHA1 Message Date
HapeLee fc096c92e8 fix: 搜索界面问题 2026-06-14 00:21:14 +08:00
HapeLee 318bef3649 fix:修复阅读更多设置状态同步问题 2026-06-13 12:59:48 +08:00
HapeLee 1bc7e69462 fix:修复标题设置刷新问题 2026-06-13 12:40:54 +08:00
HapeLee 78a78a59cb fix:修复设置开关状态刷新问题 2026-06-13 12:40:45 +08:00
HapeLee ecea5607d7 fix:修复词典规则页状态同步问题 2026-06-13 12:39:07 +08:00
HapeLee 3833ca1f7c fix:修复词典查询弹窗问题 2026-06-13 12:38:55 +08:00
HapeLee 97627be0da fix:修复阅读搜索定位问题 2026-06-13 12:38:38 +08:00
fansan 2f06e56104 fix: 解决 TitleSettingsPage 标题间距与字号加减按钮点击不刷新问题 2026-06-13 09:14:27 +08:00
fansan 9843bed95f fix: 解决 TitleSettingsPage 标题间距与字号加减按钮点击不刷新问题 2026-06-13 08:48:16 +08:00
fansan 733bed3bcb fix: 修复设置页面按钮点击状态未改变的问题 2026-06-12 18:45:39 +08:00
HapeLee 9be789f310 fix: 编辑样式 2026-06-12 15:39:46 +08:00
HapeLee 4e33693627 fix: 浮动按钮在边界状态下越界崩溃 2026-06-12 15:33:25 +08:00
HapeLee 1a99cdbac3 fix: 自动跳转最近阅读打开崩溃 2026-06-12 15:22:05 +08:00
HapeLee b8ddb487eb fix: 修复阅读搜索定位和双页同步问题 2026-06-12 13:54:44 +08:00
HapeLee 77ff118171 fix: 语言问题 2026-06-12 13:33:59 +08:00
HapeLee 28f80ad226 fix: 阅读界面相关优化 2026-06-12 13:27:35 +08:00
HapeLee d25568d99a fix: 高亮逻辑问题 2026-06-12 12:55:47 +08:00
HapeLee 35875f7dd3 fix: 补全修复阅读界面缺失的一些功能和同步问题 2026-06-12 03:26:36 +08:00
HapeLee 5ff9f3145a refactor: 统一FontSelectSheet组件 2026-06-12 03:22:13 +08:00
HapeLee d4745b55b4 refactor: 代码优化 2026-06-12 03:22:13 +08:00
HapeLee 81fc3ea7e4 fix: 使用TextPaint副本避免修改共享paint影响绘制线程 2026-06-11 20:46:31 +08:00
HapeLee dbe5863aa4 fix: 简繁体转换 2026-06-11 15:42:31 +08:00
HapeLee a94dc88a57 refactor: 一些本地属性迁移 2026-06-11 13:34:41 +08:00
HapeLee 08f197598f fix: 页眉字体 2026-06-11 13:34:21 +08:00
HapeLee 55b15c2de3 fix: 阅读界面配置响应性 2026-06-11 13:34:21 +08:00
HapeLee fc408c42dd fix: 高亮规则排版 2026-06-11 13:34:21 +08:00
HapeLee 541de1958a fix: 朗读引擎储存 2026-06-11 13:34:20 +08:00
HapeLee 6ec686074a fix: 电量 2026-06-11 13:34:20 +08:00
HapeLee 1a0599efe1 fix: 阅读界面电量显示始终为100%
电量更新依赖 ACTION_BATTERY_CHANGED 粘性广播通过 LiveEventBus 的
observeForever 传递初始值,在某些 Android 版本上不可靠。

修复:在 onRefsReady() 和 onResume() 中通过 Context.sysBattery
直接查询系统电量,确保阅读界面打开和恢复时立即显示正确电量。
2026-06-11 01:36:06 +08:00
HapeLee aa16376dae fix: 屏幕方向和屏幕超时设置切换后不立即生效
MoreConfigSheet 中屏幕方向和屏幕超时的变更只写入 DataStore,需经过
6 步异步传播(DataStore → Flow → ViewModel → Effect → Controller)
才能生效,导致:
- 切换横屏后文字显示不全,仍保持竖屏布局
- 目录不跟随横屏显示
- 屏幕超时设置延迟生效

修复:
- 新增 ReadBookIntent.SetOrientation 意图,直接写入 ReadConfig 并发射 Effect
- 将 ReadBookIntent.KeepLightChanged 改为带值的 data class,同理直接生效
- MoreConfigSheet 在写 DataStore 的同时同步调用 onIntent,立即应用变更
- 新增反向横屏(REVERSE_LANDSCAPE)选项
2026-06-11 01:36:06 +08:00
HapeLee 7d333f8b6c fix: 字体重置问题 2026-06-11 01:36:06 +08:00
HapeLee a6aff40e26 fix: 标签失效 2026-06-11 01:36:06 +08:00
HapeLee 961dca02ba fix: 背景图片 2026-06-11 01:36:06 +08:00
HapeLee f80a46d073 fix: 搜索结果页返回时丢失搜索状态
1. MainNavigator: 从 BookInfo 进入 ReadBook 时保留栈中历史,
   返回路径恢复为 ReadBook → BookInfo → Search → Home

2. SearchViewModel: initialize() 检查 committedQuery 是否为空,
   已有活跃搜索会话时跳过 clearSearchResults(),避免
   LaunchedEffect 在 Navigation3 entry 重新进入 composition 时
   清空搜索结果
2026-06-11 01:36:05 +08:00
HapeLee ce22b9f20e fix: 高亮规则 fontPath 排版测量与绘制字体不一致导致行首行尾标点错位
排版阶段始终用默认字体测宽和断行,但绘制阶段才切换高亮规则字体,
导致不同字体的标点 advance 差异引起首尾符号错位。

- TextLine.addColumn(): 把 fontPath.isNotEmpty() 纳入 onlyTextColumn 判断,
  防止仅改字体的规则被 fastDrawTextLine 跳过
- TextColumn: 新增 internal getTypeface() 让排版阶段复用 typeface 缓存
- TextChapterLayout: 在 applyHighlightRules 后用 remeasureWithHighlightFonts()
  按字符/cluster 使用对应 fontPath 的 TextPaint 重新测宽,
  确保 ZhLayout 断行、desiredWidth、TextColumn.start/end 全部基于正确字体度量
2026-06-11 01:36:05 +08:00
HapeLee 8af29b969b fix: 关闭悬浮底栏时LiquidGlass回退导致卡死
将LiquidGlass→Haze回退逻辑从SystemMenuPage的双Intent分发移至
ViewModel的FloatingBottomBar处理器中,确保readMenuFloatingBottomBar
和readMenuBottomBarBlurMode在同一_uiState.update中原子更新,
避免渲染管线看到floating=false+blurMode=LiquidGlass的非法中间状态。
2026-06-11 01:36:05 +08:00
HapeLee 1eca67f133 revert: 撤回 mostRecentlyReadBook 查询 2026-06-11 01:36:05 +08:00
HapeLee 408db6145f fix: defaultToRead 时打开特定书籍被忽略
当 intent 指定了具体路由(如从书架打开某本书)时,
defaultToRead 不应覆盖,只在 intent 为默认首页时才自动跳转最近阅读。
2026-06-10 23:38:18 +08:00
HapeLee 2788d5e9d8 fix: defaultToRead 始终跳转同一本书
lastReadBook 查询有过滤 type & BookType.text > 0,
漫画等非文本类型书籍不会被返回,导致始终跳转到很久以前读过的文本类书。

新增 mostRecentlyReadBook 查询(不限类型),initData / initReadBookConfig
改用它获取最近阅读的书籍。
2026-06-10 21:34:27 +08:00
HapeLee 3a8c4af968 fix: 朗读问题 2026-06-10 21:17:03 +08:00
HapeLee b1f4b207cc fix: 阅读返回行为 2026-06-10 03:05:48 +08:00
HapeLee 62875c54d9 fix: 书签问题与高亮规则代码优化 2026-06-10 02:44:07 +08:00
HapeLee 6749faf6eb fix: 主页面卡顿问题 2026-06-10 01:45:32 +08:00
HapeLee 43d5f6d5e2 fix: 漫画偏好设置问题 2026-06-10 01:45:32 +08:00
HapeLee 7bf9dfa09b fix: 自动跳转最近阅读 2026-06-10 01:45:32 +08:00
HapeLee eef1f58f26 fix: 高亮规则增加更多配置 2026-06-10 01:45:32 +08:00
HapeLee b27f068525 fix: 电量显示 2026-06-10 01:01:15 +08:00
HapeLee 38bbe6f3ff fix: 阅读时换源与并发数量 2026-06-10 00:42:01 +08:00
HapeLee 7b9a5dca16 fix: 章节点击事件 2026-06-10 00:42:00 +08:00
HapeLee 1c3ea16043 fix: 探索页网格数量不保存问题 2026-06-10 00:42:00 +08:00