fix(intro): hold companion popup until dashboard reveal cinematic ends
Demo images / Build & push demo images (push) Failing after 1m42s

The remote-companion popup fired on a blind 5s timer while the
first-visit dashboard entrance cinematic runs for 8s, so on a fresh
install it appeared mid-reveal and broke the intro. The cinematic now
publishes an introCinematicPlaying flag via the loginTransition store,
and the popup waits for it to clear (plus a 2s grace) before showing.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
archipelago
2026-07-16 06:57:42 -04:00
co-authored by Claude Fable 5
parent e9c3311eff
commit fa91faa67c
3 changed files with 46 additions and 3 deletions
+12
View File
@@ -15,6 +15,12 @@ export const useLoginTransitionStore = defineStore('loginTransition', () => {
const pendingWelcomeTyping = ref(false)
/** Trigger welcome typing on Home - set true after dashboard animation finishes */
const startWelcomeTyping = ref(false)
/**
* True while the dashboard entrance cinematic (zoom/glitch reveal) is
* playing. Overlays that would visually compete with it (e.g. the
* companion intro popup) hold off until this flips back to false.
*/
const introCinematicPlaying = ref(false)
function setJustLoggedIn(value: boolean) {
justLoggedIn.value = value
@@ -32,6 +38,10 @@ export const useLoginTransitionStore = defineStore('loginTransition', () => {
startWelcomeTyping.value = value
}
function setIntroCinematicPlaying(value: boolean) {
introCinematicPlaying.value = value
}
return {
justLoggedIn,
setJustLoggedIn,
@@ -41,5 +51,7 @@ export const useLoginTransitionStore = defineStore('loginTransition', () => {
setPendingWelcomeTyping,
startWelcomeTyping,
setStartWelcomeTyping,
introCinematicPlaying,
setIntroCinematicPlaying,
}
})