Sign up
pingdotgg
/
t3code
Code
Issues
Pulls
CI
Stacks
Search
Branches
Tags
Code
Issues
Pulls
CI
Stacks
Search
Branches
Tags
More
View stargazers
13
Sign up
Code
fix(web): close composer menus when their controls hide
#9541
merged
1
composer-followups/hidden-label-width
composer-followups/popup-cleanup
opened
Sep 4, 2026
by
J
Julius Marminge
6 files changed
View on GitHub
Two-way sync enabled
PR last imported 4d ago
Stack #22361
Layer 3 of 3
#9540
fix(web): measure collapsed model labels at their visible width
Conversation
7
Commits
Files changed
1 unresolved
1 unresolved thread · Jump to file
apps/web/src/components/chat/ChatComposer.tsx:4442 · ### Hidden picker shortcut can immediately close **Medium Severity** <!-- DESCRIPTION START --> `o
Selected thread:
apps/web/src/components/chat/ChatComposer.tsx
:4442 — ### Hidden picker shortcut can immediately close **Medium Severity** <!-- DESCRIPTION START --> `openModelPicker` reveals a hidden trigger by setting `isComposerFocused` without the mobile expand in-flight guard. Expanding unmounts the collapsed prompt and the picker steals form focus, so `onBlurCapture` schedules `scheduleComposerCollapseCheck`. If that check runs before the popup is focused, focus flips back off, `composerControlsHidden` becomes true again, and the new render-time close clears `isComposerModelPickerOpen`. The model-picker shortcut then never stays open on narrow mobile layouts. <!-- DESCRIPTION END --> <!-- BUGBOT_BUG_ID: 28b0724e-77e7-4202-ab91-9cb628c842ce --> <!-- LOCATIONS START apps/web/src/components/chat/ChatComposer.tsx#L4431-L4442 apps/web/src/components/chat/ChatComposer.tsx#L3561-L3565 apps/web/src/components/chat/ChatComposer.tsx#L4648-L4651 LOCATIONS END --> <details> <summary>Additional Locations (2)</summary> - [`apps/web/src/components/chat/ChatComposer.tsx#L3561-L3565`](https://github.com/pingdotgg/t3code/blob/b150cbbffb426840dc8ac7736514e3d174b09443/apps/web/src/components/chat/ChatComposer.tsx#L3561-L3565) - [`apps/web/src/components/chat/ChatComposer.tsx#L4648-L4651`](https://github.com/pingdotgg/t3code/blob/b150cbbffb426840dc8ac7736514e3d174b09443/apps/web/src/components/chat/ChatComposer.tsx#L4648-L4651) </details> <div><a href="https://cursor.com/open?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9DVVJTT1IiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjA1ZTFlMTMyLTFiYjAtNDhkMi05MjM4LTY5OWQ0YWI2YjRkYiIsImVuY3J5cHRpb25LZXkiOiJsM2stUVhIODRsQ1lyTXFUVkpxM2M3NENuWG8xcl9QUFAzQ1IyR1VBMFI4IiwiYnJhbmNoIjoiY29tcG9zZXItZm9sbG93dXBzL3BvcHVwLWNsZWFudXAiLCJyZXBvT3duZXIiOiJwaW5nZG90Z2ciLCJyZXBvTmFtZSI6InQzY29kZSIsInByb3ZpZGVyIjoiZ2l0aHViIn19" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-cursor-light.png"><img alt="Fix in Cursor" width="115" height="28" src="https://cursor.com/assets/images/fix-in-cursor-dark.png"></picture></a> <a href="https://cursor.com/agents?link=eyJ2ZXJzaW9uIjoxLCJ0eXBlIjoiQlVHQk9UX0ZJWF9JTl9XRUIiLCJkYXRhIjp7InJlZGlzS2V5IjoiYnVnYm90OjA1ZTFlMTMyLTFiYjAtNDhkMi05MjM4LTY5OWQ0YWI2YjRkYiIsImVuY3J5cHRpb25LZXkiOiJsM2stUVhIODRsQ1lyTXFUVkpxM2M3NENuWG8xcl9QUFAzQ1IyR1VBMFI4IiwiYnJhbmNoIjoiY29tcG9zZXItZm9sbG93dXBzL3BvcHVwLWNsZWFudXAiLCJyZXBvT3duZXIiOiJwaW5nZG90Z2ciLCJyZXBvTmFtZSI6InQzY29kZSIsInByTnVtYmVyIjo5NTQxLCJjb21taXRTaGEiOiJiMTUwY2JiZmZiNDI2ODQwZGM4YWM3NzM2NTE0ZTNkMTc0YjA5NDQzIiwicHJvdmlkZXIiOiJnaXRodWIifX0" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/fix-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/fix-in-web-light.png"><img alt="Fix in Web" width="99" height="28" src="https://cursor.com/assets/images/fix-in-web-dark.png"></picture></a></div> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit b150cbbffb426840dc8ac7736514e3d174b09443. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup>
Files Changed
0 / 6 viewed
6 files changed
Line totals unavailable
Ignore whitespace
Unified
Split
apps/web/src/components/chat
apps/web/src/components/chat
…
ChatComposer.tsx
ChatComposer.tsx
…
CompactComposerControlsMenu.tsx
CompactComposerControlsMenu.tsx
…
TraitsPicker.tsx
TraitsPicker.tsx
…
composerProviderState.tsx
composerProviderState.tsx
…
useComposerMenuState.test.tsx
useComposerMenuState.test.tsx
…
useComposerMenuState.ts
useComposerMenuState.ts
…