[Bug] Desktop: 多轮会话切换标签页再切回后,视口跳到第一条消息而非最新消息
Open
Nobody has claimed this yet.
priority: P2
- Dominant language
- No language data
- Stars
- 22
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
环境
- 客户端:ZCode Desktop 3.10.1
- 系统:macOS (Apple Silicon)
复现步骤
- 新建一个会话,进行多轮对话(内容超过一屏)
- 切换到另一个会话/对话框
- 切回原会话
实际行为
视口定位在会话开头(第一条消息),需要手动滚动很久才能回到最新消息。
期望行为
恢复离开时的滚动位置;若离开时贴着底部,则定位到最新一条消息。
备注
- 短对话(内容未超一屏)可能无法复现;疑似消息列表为虚拟滚动,切换标签页时组件卸载、切回重新挂载后未恢复滚动锚点/未滚动到底部
- 相关问题:#341(长会话回复结束后视口锁死在中间位置、无法滚动到底部),可能是同一模块的滚动定位问题
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue in ZCode Desktop 3.10.1 on macOS with a multi-turn conversation exceeding one screen, then switch conversations and return. Investigate the message list's virtual scrolling and how its scroll anchor is handled when the view is unmounted and remounted; compare with related issue #341. Done means returning to the previous position, or to the newest message when the user was at the bottom.
Written by the indexing model from the issue text.
Assessment
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100