Bug: Composer input overflow with long unbroken string causes layout shift and send button misalignment
@shubhook ya está trabajando en esto.
Desde el 27/7/2026.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 76/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Tranquilo
- Stack tecnológico
- typescript
- Área
- frontend
Línea de trabajo
Comienza con gui/src/components/mainInput/TipTapEditor/TipTapEditor.tsx y TipTapEditor.css; después inspecciona el contenedor de entrada en ContinueInputBox.tsx o su equivalente. Reproduce el problema en Continue Composer con una cadena ininterrumpida de más de 100 caracteres y rastrea los estilos relevantes de flex y del editor. La tarea estará terminada cuando la cadena permanezca dentro del área de entrada y el botón de envío y el diseño del composer sigan alineados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
When typing or pasting a long unbroken string (no spaces, e.g., aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... or a long base64 token) in the Composer input box, the text overflows the input area instead of wrapping. This causes the flex container to expand, shifting the entire composer layout and misaligning the send button relative to the input.
To Reproduce
- Open Continue Composer in VS Code
- Type or paste a long string without spaces (e.g., 100+
acharacters) into the input box - Observe that the text extends beyond the input box boundary
- The composer panel shifts horizontally, and the send button drifts out of alignment
Expected behavior
- Long unbroken strings should wrap inside the input box
- The composer layout should remain stable regardless of input content
- The send button should stay in its normal position
Screenshots / Recordings
N/A — easily reproducible with any long no-space string.
Environment info
- Continue version: latest (observed in recent versions)
- IDE: VS Code
- OS: all (cross-platform CSS issue)
Root cause
The Composer uses TipTap (TipTapEditor.tsx + TipTapEditor.css) as its input component.
- No text wrapping fallback — The
.tiptapstyles inTipTapEditor.csslackoverflow-wrap: break-word/word-break: break-word. By default, the browser does not break unbroken strings, so they overflow the contenteditable div. - No min-width constraint on flex item — The input wrapper or its flex container lacks
min-width: 0, so the flex item's defaultmin-width: autoprevents the container from shrinking below the content width. This propagates the overflow outward, shifting the layout.
Suggested fix
In gui/src/components/mainInput/TipTapEditor/TipTapEditor.css, add to the .tiptap class:
.tiptap {
overflow-wrap: break-word;
word-break: break-word;
}
And on the flex container or input wrapper in ContinueInputBox.tsx (or equivalent), add min-width: 0 to the appropriate flex child to allow proper shrinking.
Additional context
This is a classic CSS flexbox overflow issue. The fix is minimal, backwards-compatible, and has no side effects on normal input behavior (spaces still wrap as before; only unbroken strings are affected).
- Lenguaje dominante
- TypeScript
- Estrellas
- 36.2k
- Forks
- 5.5k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de continuedev/continue
-
create_new_file writes a JSON file on one line when the model sends its contents as a JSON valuePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
continuedev/continue#13363 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 66/100
continuedev/continue#13352 ·
-
fetch: SSE ping comments silently drop data in the same chunkPosiblemente ocupada @fhgffy la tomó hace 12 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
continuedev/continue#13347 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
continuedev/continue#13291 ·
-
Ollama provider drops `tools` after the first tool call, breaking multi-step agent loopsPosiblemente ocupada @dvd233 la tomó hace 35 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
continuedev/continue#13254 · 2 comentarios ·
Todos los issues de continuedev/continue
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
auth: agent-bearer --manager-call is told to use the MCP instance argument on an ambiguous managerAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
Los mantenedores suelen responder en 1 día
-
Lyric and ApostrophesAbiertobug module: playback
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
chthollyphile/folia-major#739 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
agilepathway/label-checker#773 · 2 comentarios ·
Los mantenedores suelen responder en 1 día