[Bug]: Slash menu drifts away from the composer when dragging on iPad
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 79/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- typescript
- Bereich
- frontend
Rechercherichtung
Beginne mit apps/web/src/components/chat/ComposerCommandMenuLayer.tsx und untersuche, wie der Layer seine Position anhand von getBoundingClientRect() des Composers aktualisiert. Reproduziere das Problem auf einem iPad bei geöffneter Tastatur und prüfe dann, wie sich Resize- und Scroll-Ereignisse von visualViewport auf den Composer und das Menü auswirken. Fertig ist es, wenn das Slash-Menü beim Ziehen der Seite am Composer befestigt bleibt und das Verhalten auf dem iPad überprüft wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/web
Steps to reproduce
- Open the T3 Code web client in a browser tab on an iPad.
- Tap the composer so the keyboard opens, then type
/to open the slash menu. - Drag up or down on the page outside the composer.
Expected behavior
The slash menu stays attached to the top of the composer.
Actual behavior
The page moves but the slash menu does not move with the composer. It drifts away from the composer while dragging.
The menu is portaled to body as position: fixed. Its position comes from the composer's getBoundingClientRect() (apps/web/src/components/chat/ComposerCommandMenuLayer.tsx) and only updates on window resize/scroll. With the keyboard open, iPadOS pans the visual viewport, and that panning fires on visualViewport, which the layer does not listen to. The composer moves with the page while the menu keeps its old coordinates.
Pinning the shell to the visual viewport, as #19513 does on phones, would remove most of the panning. The layer still needs to update on visualViewport resize and scroll.
Impact
Minor bug or occasional failure
Version or commit
main at bb4afa542
Environment
iPad, web client in a browser tab. iPadOS and browser versions were not recorded.
Logs or stack traces
None.
Workaround
None found.
[!Note]
Responses generated with Claude (model: Claude Opus 5.5)
- Vorherrschende Sprache
- TypeScript
- Sterne
- 24.8k
- Forks
- 6.4k
- Ø Merge
- 7 Std. 33 Min.
- Gemergte PRs (30 T.)
- 96
Entwicklungsumgebung
Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus pingdotgg/t3code
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 1 Tag
-
[Bug]: Double hyphens look like a single dash in the project script command fieldEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug needs more info needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
pingdotgg/t3code#32885 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Usage limits hide the account label at wider sizesEvtl. vergeben @extoci hat das vor 1 Tag übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in pingdotgg/t3code
Ähnliche Issues
-
bug chore
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
🧩 Docs job fails type-checking `generate-plugin-docs.ts`Evtl. vergeben @X-Guardian hat das heute übernommen. Offendiscussion
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 1 Tag
-
envision-erpnext
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug sharing & sync
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 92/100
Maintainer antworten meist innerhalb von 1 Tag