Sea Select: keep the sky btn lit on a revisited felt (+ clean felt-swap); slow the glow-handoff ease-out — TDD
Symmetry (user-spec): Sky Select leaves the burger sea btn lit while the sky felt is up; Sea Select now mirrors it — openSea disables ONLY id_text_btn, no longer id_sky_btn, so a revisited Sea Select keeps the completed sky one click away. An adversarial pass flagged that the two felts are equal-z (z-index:5) siblings and neither open path drops the other's open-class, so leaving the sky btn lit and clicking it from inside the sea felt would DOUBLE-OPEN (sea paints over sky → confusing no-op) — the same latent stack already reachable in the sky->sea direction on a both-complete reload. Fixed in BOTH directions: openSea now closes the sky felt first + openSky closes the sea felt first (each exposes its close on window: closeSeaFelt / closeSkyFelt), so clicking the other phase's lit btn performs a clean SWAP. The text-btn disable/restore chain stays correct across the swap (closeSky restores text, openSea re-disables + recaches it). Glow: the glow-handoff pulse ease-OUT now runs ~2.8s (was ~1.4s) — moved the cycle to 3.2s with the bright peak at 12.5%, keeping the ease-IN swell at ~0.4s (user asked for a longer linger). [[feedback-felt-aperture-fill-covers-felt]] [[feedback-inline-partial-script-defer-for-later-partial]] Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -184,6 +184,13 @@
|
||||
}
|
||||
|
||||
function openSky() {
|
||||
// Clean SWAP, not a double-open: if the sea felt is up (its lit sky btn was
|
||||
// just clicked) close it first. Both felts are z-5 siblings that otherwise
|
||||
// stack; neither open path drops the other's open-class on its own. Mirrored
|
||||
// by openSea closing the sky felt (user-spec 2026-06-08).
|
||||
if (document.documentElement.classList.contains('sea-open') && window.closeSeaFelt) {
|
||||
window.closeSeaFelt();
|
||||
}
|
||||
document.documentElement.classList.add('sky-open');
|
||||
_disableTextBtn();
|
||||
// Re-sync the room gear to the sky NVM pane (room-views.js owns the gear
|
||||
@@ -624,6 +631,9 @@
|
||||
// Exposed so the burger fan's #id_sky_btn (active once the sky is saved) can
|
||||
// reopen the saved wheel. burger-btn.js calls window.openSkyFelt().
|
||||
window.openSkyFelt = openSky;
|
||||
// Exposed so openSea can close the sky felt for a clean felt-swap when a user
|
||||
// clicks the lit sky btn from inside the sea felt (user-spec 2026-06-08).
|
||||
window.closeSkyFelt = closeSky;
|
||||
|
||||
// ── Restore persisted form data + prime a saved (confirmed) wheel ───────────
|
||||
// Pre-save the wheel draw is deferred to openSky (form shows alone). Once the
|
||||
|
||||
Reference in New Issue
Block a user