Skip to content

fix(suggested-tracks): row hover + full-row play click target#14426

Merged
dylanjeffers merged 1 commit into
mainfrom
fix/suggested-tracks-play-affordance
May 29, 2026
Merged

fix(suggested-tracks): row hover + full-row play click target#14426
dylanjeffers merged 1 commit into
mainfrom
fix/suggested-tracks-play-affordance

Conversation

@dylanjeffers
Copy link
Copy Markdown
Contributor

Summary

Make the "Add some tracks" panel rows visibly playable:

  • Full-row hover: row gets a neutral hover background and pointer cursor.
  • Play overlay on artwork: now fades in on row hover and row focus-visible, not just artwork hover. Persistent when the track is playing.
  • Full-row click target: clicking anywhere on the row (except the Add button or the artist link) toggles playback via the existing useToggleTrack. Keyboard activation with Enter/Space works because the row is role='button' tabIndex={0}.
  • Add button stops propagation so it only adds, never plays.
  • Artist UserLink stops propagation so navigating to the profile doesn't also start playback.
  • Skeleton row stays inert (default cursor, no hover bg).

Before: only the 40×40 artwork was clickable; nothing told the user the row was playable. After: hovering anywhere on the row dims the artwork and surfaces the play/pause icon, and clicking anywhere starts playback.

Test plan

  • Open a playlist edit page → expand Add some tracks panel.
  • Hover a row → row background tints (harmony-n-50), play icon appears centered on the artwork. Hover again with playback active → pause icon shown.
  • Click the row body (not Add, not artist name) → track starts playing.
  • Click the same row again while playing → pauses.
  • Click the Add button → track added; playback does NOT start, panel does NOT scroll.
  • Click the artist name → navigates to the profile; playback does NOT start.
  • Tab through panel with keyboard → row gets a focus-visible outline, Enter/Space toggles play.
  • Verify skeletons (before tracks load) show no hover state and use a default cursor.

🤖 Generated with Claude Code

The "Add some tracks" rows had no visible affordance that the row is
playable — only the artwork showed a play overlay on its own hover, and
only the artwork accepted clicks. Move the click target to the full row
(except the Add button) and surface the play overlay on row hover so the
playability is obvious.

- Row gets cursor:pointer, neutral hover background, and a focus-visible
  outline. Clicking or pressing Enter/Space anywhere on the row toggles
  playback (via the existing useToggleTrack hook).
- Play/Pause overlay on the artwork now fades in on row hover and row
  focus-visible, not just artwork hover.
- Add button stops propagation so it only adds, never plays.
- UserLink stops propagation so clicking the artist still navigates to
  the profile without also triggering playback.
- Skeleton row keeps a default cursor and no hover background.

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

changeset-bot Bot commented May 29, 2026

⚠️ No Changeset found

Latest commit: 5b73207

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions
Copy link
Copy Markdown
Contributor

🌐 Web preview ready

Preview URL: https://audius-web-preview-pr-14426.audius.workers.dev

Unique preview for this PR (deployed from this branch).
Workflow run

@dylanjeffers dylanjeffers merged commit 55bfc54 into main May 29, 2026
13 checks passed
@dylanjeffers dylanjeffers deleted the fix/suggested-tracks-play-affordance branch May 29, 2026 20:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant