Skip to content

feat(reader): 新增滚轮翻页开关 + 修设置合并丢默认值 - #16

Merged
liaoshutian merged 1 commit into
mainfrom
dev/hehetoshang
Jul 16, 2026
Merged

feat(reader): 新增滚轮翻页开关 + 修设置合并丢默认值#16
liaoshutian merged 1 commit into
mainfrom
dev/hehetoshang

Conversation

@hehetoshang

Copy link
Copy Markdown
Collaborator

Summary

  • 滚轮翻页:EpubReader 加 on_wheel / bind_iframe_wheel,用 querySelectorAll('#reader iframe') 拿当前所有 iframe 绑 wheel,绕过不同 epub.js 版本里 rendered 回调 shape 不一致的问题,连续模式多 iframe 也都覆盖
  • 设置合并:原 Object.assign({}, defaults, saved) 会被 saved 里的 undefined 字段盖掉默认;老存档里缺 wheel_paging 就被改成 undefined,导致 handler 早 return 永远不翻页。改成显式跳过 undefined 值
  • 设置面板:新增「滚轮翻页」开/关二选一,默认 true
  • e2e:切换用例(reader-ui)

Test plan

  • 手动:npm run dev → 打开任意 .epub → 滚轮翻页生效;设置中关闭后再滚轮不翻页;开启恢复
  • e2e:npx playwright test -g "滚轮翻页" 通过
  • 合并前再跑一次全量 npm run test:e2e(AGENTS.md 要求)

🤖 Generated with Claude Code

- EpubReader: 加 on_wheel / bind_iframe_wheel(querySelectorAll #reader iframe,
  绕开不同 epub.js 版本的 rendered 回调 shape 不一致)
- EpubReader: 修 settings 合并,Object.assign 不再被 saved 里的 undefined 盖掉默认
  (老存档缺 wheel_paging 时翻页变 undefined 导致 handler 不触发)
- Settings: 「滚轮翻页」开/关切换,默认 true
- e2e: 新增切换用例

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@liaoshutian
liaoshutian merged commit ae538d6 into main Jul 16, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants