Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Web UI 框选菜单两处问题:评论输入框点击背景即消失并丢失内容;代码块内框选不弹出菜单

Abierto
#4,022 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
65/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
css, html, javascript, typescript
Área
frontend, web-dev

Línea de trabajo

Look for the selection menu and comment input box components in the frontend code, likely in a UI or components directory. The issue mentions shadow DOM and event handling; inspect the relevant event listeners for focus loss and selection detection within code blocks. Test changes by running the web UI locally and verifying that the menu appears for code selections and the input persists when clicking outside.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

你运行的 Kimi Code 版本是?

2.0.2(本机 kimi web,kimi --version 输出)

你使用的是哪个开放平台/订阅?

Kimi 会员(订阅)

你的电脑平台是?

Linux 6.6.87.2-microsoft-standard-WSL2 x86_64(kimi web 运行在 WSL2 内);浏览器:Chrome 153(Windows 侧)

你遇到了什么问题?

Web UI 对话中框选文字后的菜单有两处问题,都影响对某段回复做针对性提问。

问题 1:评论输入框点击背景即消失,已输入内容一并丢失

选择「评论」后会出现一个填写评论的输入框。此时只要让焦点离开这个输入框——点击对话背景、点到别处、或者去拖动/框选原文——输入框就会立即消失,已经输入的内容也一起丢失,无法找回。

本地实测:单纯用滚轮滚动不会关闭它,关闭判定实际挂在输入框失焦上。诊断与证据见这条评论。

写评论时经常需要回到原文核对,或者从原对话里复制一段文字作为引用,而这些操作都必须点到输入框以外的区域。也就是说,输入框几乎撑不到一句完整评论写完。

问题 2:代码块内框选文字时不弹出菜单

对话回复中代码块(Markdown 代码块、Python 或其他任何语言的围栏代码块)里的文字,框选后不会弹出「评论」「添加到对话」菜单,无法对代码内容发表评论或加入对话。同样的操作作用在普通正文上一切正常,即框选菜单在代码块区域整体失效。

本地实测根因:代码块正文渲染在 <diffs-container> 的 open shadow root 内,框选后 Selection.getRangeAt(0) 被浏览器重定向成「已折叠、rect 为 0」的 range,菜单的选区判定因此失效。诊断与证据见这条评论。

复现步骤?

问题 1

  1. 在 Web UI 打开任意会话,鼠标框选对话中的一段文字。
  2. 在弹出的选项中点击「评论」。
  3. 在出现的输入框中输入一段文字(写一半即可)。
  4. 点击输入框以外的对话背景区域(去拖动、框选原文同样会触发;单纯用滚轮滚动不会)。
  5. 观察:评论输入框消失,步骤 3 输入的文字丢失,且没有任何提示。

问题 2

  1. 在 Web UI 打开任意会话,让回复里包含一个代码块(例如让它写一段 Python)。
  2. 用鼠标框选代码块内的文字(单行或多行均可)。
  3. 观察:不弹出「评论」「添加到对话」菜单;换成框选同一回复里的普通正文,菜单正常出现。
  4. 换 Markdown 代码块、其他语言代码块重复,表现相同。

如需要我可以补充 session id 和录屏。

期望的行为是什么?

问题 1

  1. 评论输入框在用户主动提交或主动关闭之前不应消失;点击背景、拖动、滚动、复制都不应关闭它。
  2. 建议实现为独立窗口(弹窗、侧栏或固定浮层),这样写评论时能自由查看和复制原文。
  3. 即使将来仍支持点击外部关闭,也不应静默丢弃已输入内容(先确认,或保留草稿)。

问题 2

在代码块内框选文字时,与正文一致地弹出「评论」和「添加到对话」选项(以及另一条建议中的「添加到侧边栏对话」),操作对象为选中的代码文本。

补充信息
  • 同一框选菜单上的另一项功能建议:新增「添加到侧边栏对话」,作为 /btw 的图形入口,已单独提交:#4021。
  • 两处问题都在本机 kimi web 2.0.2、WSL2、Chrome 153 上稳定复现,并已用真实鼠标事件(isTrusted=true)逐条实测确认。
Contribution
  • 我愿意自己提交修复此 bug 的 PR(请先等待维护者在本 issue 中批准)
Lenguaje dominante
TypeScript
Estrellas
7.7k
Forks
1.3k
Merge medio
12 h 57 min
PR fusionados (30 d)
308

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de MoonshotAI/kimi-code

Todos los issues de MoonshotAI/kimi-code

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.