Files
sim/apps
Theodore LiandClaude Opus 4.7 49c12011dc feat(ui): update context menu (#4362)
* feat(ui): update context menu

* fix(user-input): clear mention state on submit

Programmatic plusMenuRef.close() sets the dropdown's internal open=false but
Radix doesn't fire onOpenChange for controlled changes, so handlePlusMenuClose
never ran and mentionRangeRef stayed truthy after submitting a message with
an active @mention. That caused the keydown handler to keep intercepting
ArrowUp/ArrowDown/Tab post-submit, breaking the "edit last queued message"
ArrowUp shortcut until the user typed again.

Clear mentionRangeRef and mentionQuery inline alongside the close() call.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore(ui): widen mention/plus dropdown to 420px

Long resource names were truncating in a 320px-wide menu. Bump to 420px and
cap with max-w on viewport so it can't overflow on small screens. Overrides
the emcn DropdownMenuContent's default max-w-[220px] via twMerge.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore(ui): trim mention/plus dropdown width to 360px

420px felt too wide; 360px gives long resource names enough room without
dominating the input area.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* tweak context menu widths

* address greptile review on PR #4362

- plus-menu-dropdown: drop folder type from the flat mention list (folders organize
  resources but aren't an insertable mention target — the nested rendering already
  excludes them).
- user-input: fold Enter into the mention-mode keydown guard so Enter confirms the
  highlighted resource instead of submitting the form. Falls through to the normal
  Enter-submit path when no match is highlighted (Tab keeps prior behavior).
- dropdown-menu wrapper: drop the misleading cast on the spread — runtime accepts
  onOpenAutoFocus regardless and the cast was hiding any future props added to
  DropdownMenuContentProps.
- plus-menu-dropdown: trim mention-mode + submenu widths to 300px (320px clipped on
  the narrower copilot panel).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 17:33:22 -04:00
..
2026-04-30 17:33:22 -04:00