Skip to content

Fix agent list task overflow and unify action buttons#136

Closed
scion-gteam[bot] wants to merge 3 commits into
mainfrom
scion/web-layout-fixes
Closed

Fix agent list task overflow and unify action buttons#136
scion-gteam[bot] wants to merge 3 commits into
mainfrom
scion/web-layout-fixes

Conversation

@scion-gteam
Copy link
Copy Markdown

@scion-gteam scion-gteam Bot commented Jun 4, 2026

Summary

  • Task cell overflow (Closes Web: agent list view — long task text pushes action buttons off-screen #134): The .task-cell in list view was rendered as a <span> (inline element), causing max-width/overflow/text-overflow to be silently ignored. Long task text pushed action buttons off-screen. Fixed by switching to display: -webkit-box with -webkit-line-clamp: 2 so text wraps to at most two lines with ellipsis.
  • Card view icon-only buttons (Closes Web: card view square action buttons + color-coded hover (both views) #135): Card view action buttons now render icon-only (square), matching the list view. Text labels removed; <sl-tooltip> and aria-label added for accessibility.
  • Color-coded hover effects: Added hover color-coding to action buttons in both views: red for stop/delete, amber for suspend, green for resume/start, blue for terminal. Uses ::part(base):hover to style Shoelace shadow DOM internals. Hover backgrounds use translucent rgba() values that work correctly in both light and dark mode.
  • DRY refactor: Extracted shared renderActionButtons() helper, eliminating duplicated button-rendering logic between renderAgentCard and renderAgentRow.

Files changed

  • web/src/components/shared/resource-styles.ts.task-cell CSS fix (line-clamp)
  • web/src/components/pages/agents.ts — shared button helper, hover CSS, card/row refactor

Build & lint

  • npm run typecheck — passes
  • npm run build — passes
  • npm run lint — pre-existing lint errors only; no new errors introduced

Screenshots

All screenshots captured from the real running Scion web app (Vite dev server with fetch-intercepted mock agent data).

Before — Card view with text labels

before-card

Before — List view: task text overflows, actions pushed off-screen

before-list

After — Card view: icon-only buttons with tooltips

after-card

After — List view: task clamped to 2 lines, actions visible

after-list

Hover — Card view tooltip ("Suspend")

hover-card

Hover — List view tooltip ("Stop")

hover-list

Dark mode — Card view

dark-card

Dark mode — List view

dark-list

Test plan

  • List view: long task text wraps to 2 lines with ellipsis
  • List view: action buttons remain visible with long task text
  • Card view: buttons are icon-only (no text labels)
  • Card view: Suspend button appears for running agents with resume support
  • Both views: hover shows tooltip with action name
  • Both views: aria-label on each button for screen readers
  • Dark mode: hover colors use translucent rgba, no white patches

Closes #134
Closes #135

ptone added 3 commits June 4, 2026 02:44
Task cell in list view used inline span styling that silently ignored
max-width/overflow constraints, allowing long task text to push action
buttons off-screen. Switch to display:-webkit-box with line-clamp:2
so text wraps to at most two lines with ellipsis.

Card view action buttons now render icon-only (matching list view),
with sl-tooltip and aria-label for accessibility. Both views share a
single renderActionButtons helper, eliminating the duplicated button
logic. Color-coded hover effects added to action buttons in both
views: red for stop/delete, amber for suspend, green for resume/start.

Closes #134
Closes #135
Task cell in list view used inline span styling that silently ignored
max-width/overflow constraints, allowing long task text to push action
buttons off-screen. Switch to display:-webkit-box with line-clamp:2
so text wraps to at most two lines with ellipsis.

Card view action buttons now render icon-only (matching list view),
with sl-tooltip and aria-label for accessibility. Both views share a
single renderActionButtons helper, eliminating the duplicated button
logic. Color-coded hover effects use translucent rgba backgrounds
that work in both light and dark mode: red for stop/delete, amber
for suspend, green for resume/start.

Closes #134
Closes #135
Screenshots captured from the real running app (Vite dev server +
fetch mock for agent data). Shows before/after for both issues in
light mode and dark mode.
@ptone ptone closed this Jun 5, 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.

Web: card view square action buttons + color-coded hover (both views) Web: agent list view — long task text pushes action buttons off-screen

1 participant