[Feature] 内置浏览器 Overflow 菜单支持当前网页缩放
- Dominant language
- TypeScript
- Stars
- 2.7k
- Forks
- 401
- Avg merge
- 21h 48m
- Merged PRs (30d)
- 776
Description
**提交人**: zhaotianyi
**客户端版本**: 0.1.14
---
## 使用场景
用户在 Cindy 右侧栏的内置浏览器中查看网页时,会遇到网页字号过小、信息密度过高,或需要缩小页面以查看更多内容的情况。
当前 macOS 顶部「显示」菜单已有 Zoom In / Zoom Out / Reset Zoom,但这是 Cindy 应用窗口级缩放入口。右侧浏览器工具栏右上角的 Overflow(…)目前仍为禁用占位状态,提示“更多工具(开发中)”,浏览器自身也没有面向当前网页的缩放控制。
## 诉求
参考 Codex 内置浏览器的交互,在右侧浏览器 Overflow 菜单中增加当前网页的缩放功能,让用户无需离开浏览器区域即可调整网页显示比例。
缩放应作用于当前浏览器标签中的网页内容,不应同时放大或缩小 Cindy 的聊天区、侧栏和其他应用 UI。
## 建议方案
- 点击浏览器右上角 Overflow(…)后展示可操作菜单。
- 菜单内提供紧凑的缩放控制,例如「− / 当前百分比 / +」。
- 支持一键恢复到 100%;可以点击百分比重置,或提供独立的“重置缩放”操作。
- 按标准档位逐级放大、缩小,并在达到上下限时禁用对应按钮。
- 缩放状态以当前浏览器标签为作用域;切换标签时不应误改其他网页的缩放比例。
- 页面刷新、前进和后退后保持当前标签的缩放比例。
- 与 Cindy 现有的全局窗口缩放保持独立,避免直接复用宿主窗口的 page zoom API。
- 补充键盘访问、可访问名称和 Light / Dark 主题状态。
- 同时验证 macOS 与 Windows。
## 验收标准
- [ ] 浏览器 Overflow 按钮可点击并打开菜单。
- [ ] 菜单显示当前网页的缩放百分比,并可放大、缩小和恢复 100%。
- [ ] 缩放只影响当前浏览器标签中的网页内容,不影响 Cindy 其他 UI。
- [ ] 不同浏览器标签的缩放状态相互独立。
- [ ] 刷新及前进/后退后保持当前标签的缩放比例。
- [ ] 达到缩放上下限时,对应操作不可继续触发。
- [ ] macOS 与 Windows 上交互和显示正常。
- [ ] 为缩放状态和 Overflow 菜单交互补充回归测试。
---
**OS**: darwin arm64 (25.5.0)
**界面语言**: zh-CN
Contributor guide
Research direction
Start at the right-sidebar built-in browser and its disabled Overflow button, then trace how browser tabs and navigation state are managed. Verify per-tab zoom across refresh, back/forward, macOS, and Windows, and add regression coverage for the menu and zoom state; done means the acceptance criteria pass without changing the chat UI or global window zoom.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- electron, typescript
- Domain
- desktop, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100