Skip to content

fix: make component drawer table rows inert, move selection to the name control - #66

Open
marekdano wants to merge 1 commit into
mainfrom
59-update-table-rows
Open

fix: make component drawer table rows inert, move selection to the name control#66
marekdano wants to merge 1 commit into
mainfrom
59-update-table-rows

Conversation

@marekdano

Copy link
Copy Markdown
Contributor

Closes #59

Summary

  • Drop onClick/onKeyDown/tabIndex/cursor-pointer and the row-level focus ring from ToolsTable, ResourcesTable, and PromptDefinitionTable — rows are
    now inert, matching ServersTable.
  • Move selection to the name cell: it's now a ghost button that calls onSelect*, underlines on hover, and is keyboard-activatable natively, removing the need
    for the 20 stopPropagation() calls that only existed to shield row controls from the row's own click handler.
  • Wrap each ID/URI text + copy button pair in a hover group so the whole cell lifts together (text-muted-foregroundtext-foreground) instead of only the
    icon button reacting.

Test plan

  • Repointed the ~10 unit tests (across ToolsTable, ResourcesTable, PromptDefinitionTable, plus one each in ToolDetailsPanel and PromptDetailsPanel)
    that asserted row-click/row-keyboard/cursor-pointer behavior at the new name button.
  • npx vitest run — 3054 passed, 1 skipped.
  • npx playwright test e2e/tools.spec.ts e2e/resources.spec.ts e2e/prompts.spec.ts — 67 passed, no changes needed (specs drive selection via the overflow
    menu, not row clicks).
  • tsc --noEmit and eslint clean on changed files.

…me control

Signed-off-by: Marek Dano <mk.dano@gmail.com>
@marekdano marekdano self-assigned this Aug 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update table row affordances for components

1 participant