diff --git a/src/ui/screens.ts b/src/ui/screens.ts index 041d22c..25d8801 100644 --- a/src/ui/screens.ts +++ b/src/ui/screens.ts @@ -468,16 +468,28 @@ export function initLessonScreen( companionText.textContent = ""; } - function runPracticePhase(): Promise { + async function runPracticePhase(): Promise { setPhase("practice"); + companionText.textContent = + "Jetzt kannst du ueben! Druecke die Taste zu dem Buchstaben, der herunterfaellt."; + companionArea.style.display = "flex"; + await new Promise((resolve) => setTimeout(resolve, 2500)); + if (cancelled) return; + companionText.textContent = ""; const state = createExerciseState(level); return new Promise((resolve) => { runLetterExercise(state, resolve); }); } - function runWordsPhase(): Promise { + async function runWordsPhase(): Promise { setPhase("words"); + companionText.textContent = + "Jetzt kommen ganze Woerter! Tippe die Buchstaben nacheinander ein."; + companionArea.style.display = "flex"; + await new Promise((resolve) => setTimeout(resolve, 2500)); + if (cancelled) return; + companionText.textContent = ""; const wordCount = 4; let words: string[]; if (isReview) { @@ -504,7 +516,7 @@ export function initLessonScreen( if (words.length === 0) { // Fallback: skip words phase if no words available - return Promise.resolve(); + return; } const state = createWordExerciseState(words);