feedBack/static/v3
Byron Gamatos 4dc5936712
feat(player): global autoplay & auto-exit option (songs + lessons) (#558)
* fix(v3): pedal click opens the plugin's screen, not its settings

The v3 Pedalboard's settingsTarget() resolved settings-first, so a
plugin that ships both a screen and a settings panel (notably the
bundled Audio Engine) could only ever reach its settings from the
pedalboard — its actual page was unreachable.

Flip to screen-first (stompbox metaphor: step on the pedal, see the
pedal), falling back to settings when there is no screen. Keep a
settings fallback in openPluginSettings() when a declared screen
isn't mounted yet (installing/failed) so settings-bearing plugins are
never stranded on a toast. Drive the pedal aria-label off the same
target so it never promises the wrong surface. Update the unit test
contract to screen > settings > none.

Fixes #555

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

* feat(player): global autoplay & auto-exit option (songs + lessons)

Single Settings toggle (autoplayExit, default ON) that auto-starts a song
once it's ready and returns to the launching menu when it ends. Auto-exit
defers while a results/score overlay is on top (heuristic + holdAutoExit()
contract) so a scoring plugin's screen drives the exit. Player origin is now
context-aware (lessons return to the lessons screen via setReturnScreen()),
fixing lesson completion bouncing to the library.

Core-only; songs and lessons share the playSong -> highway path. Adds a
read-only window.slopsmith.autoplayExit getter + holdAutoExit()/setReturnScreen()
for plugins. Unit tests for the pure helpers (_autoplayExitEnabled,
_resolvePlayerOrigin, _resultsOverlayVisible).

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

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 11:04:03 +02:00
..
avatars Clean release snapshot 2026-06-16 18:47:13 +02:00
brand Clean release snapshot 2026-06-16 18:47:13 +02:00
pedals Clean release snapshot 2026-06-16 18:47:13 +02:00
audio-routing.js Clean release snapshot 2026-06-16 18:47:13 +02:00
badges.js feat(onboarding): first-run home tour (spotlight coach marks) (#528) 2026-06-19 16:32:33 +02:00
brand.js Clean release snapshot 2026-06-16 18:47:13 +02:00
card-actions-core.js Clean release snapshot 2026-06-16 18:47:13 +02:00
dashboard.js feat(onboarding): first-run home tour (spotlight coach marks) (#528) 2026-06-19 16:32:33 +02:00
feedbarcade.js Clean release snapshot 2026-06-16 18:47:13 +02:00
index.html feat(player): global autoplay & auto-exit option (songs + lessons) (#558) 2026-06-22 11:04:03 +02:00
lessons.js feat(player): global autoplay & auto-exit option (songs + lessons) (#558) 2026-06-22 11:04:03 +02:00
live-guitar-tone-source.js fix: 'feed[dB]ack' -> 'fee[dB]ack' in v3 guitar tone source labels 2026-06-20 08:20:43 -07:00
live-performance-hud.js Clean release snapshot 2026-06-16 18:47:13 +02:00
manifest.json Clean release snapshot 2026-06-16 18:47:13 +02:00
notifications.js feat(progression): fancy notifications for quest/path progress + completion (#552) 2026-06-21 21:18:28 +02:00
onboarding-tour.js feat(onboarding): first-run home tour (spotlight coach marks) (#528) 2026-06-19 16:32:33 +02:00
overlay-active.png Clean release snapshot 2026-06-16 18:47:13 +02:00
overlay-inactive.png Clean release snapshot 2026-06-16 18:47:13 +02:00
pedal-cables.js Clean release snapshot 2026-06-16 18:47:13 +02:00
pedal-default.svg Clean release snapshot 2026-06-16 18:47:13 +02:00
pedal-frame.svg Clean release snapshot 2026-06-16 18:47:13 +02:00
player-chrome.js Clean release snapshot 2026-06-16 18:47:13 +02:00
playlists.js Clean release snapshot 2026-06-16 18:47:13 +02:00
plugins-page.js fix(v3): pedal click opens the plugin's screen, not its settings (#556) 2026-06-22 10:07:36 +02:00
profile.js fix(profile): wire "Your best scores" panel to real song stats (#549) (#550) 2026-06-21 20:55:02 +02:00
progress.js fix(v3): rename the "Shop" nav entry to "Unlockables" (#333) 2026-06-20 14:57:05 +02:00
progression-core.js feat(progression): fancy notifications for quest/path progress + completion (#552) 2026-06-21 21:18:28 +02:00
scoreboard-pref.js fix(highway): user-selectable scoreboard to stop duplicate HUDs 2026-06-19 20:56:38 +02:00
shell.js Promote the editor to a first-class v3 sidebar item (#546) 2026-06-21 13:15:28 +02:00
shop.js Clean release snapshot 2026-06-16 18:47:13 +02:00
songs.js Fix slow library cover loading: serve sloppak art without unpacking + revalidated caching (#534) 2026-06-20 00:22:43 +02:00
stats-recorder.js Clean release snapshot 2026-06-16 18:47:13 +02:00
theme-core.js Clean release snapshot 2026-06-16 18:47:13 +02:00
tuner-core.js Clean release snapshot 2026-06-16 18:47:13 +02:00
v3.css fix(highway): user-selectable scoreboard to stop duplicate HUDs 2026-06-19 20:56:38 +02:00
venue-instrument-pov.js Clean release snapshot 2026-06-16 18:47:13 +02:00
venue-mood-fx.js Clean release snapshot 2026-06-16 18:47:13 +02:00
venue-scene-3d.js Clean release snapshot 2026-06-16 18:47:13 +02:00
venue-viz.js Clean release snapshot 2026-06-16 18:47:13 +02:00