feat(quick-260329-tv5): show instruction text persistently in phase indicator

- setPhase("practice") now shows full instruction instead of "Ueben"
- setPhase("words") now shows full instruction instead of "Woerter"
- Removed 2500ms delay and companion text flicker in runPracticePhase
- Removed 2500ms delay and companion text flicker in runWordsPhase
This commit is contained in:
2026-03-29 21:32:41 +02:00
parent ed7bc11664
commit bbb1edb433
+3 -14
View File
@@ -160,8 +160,9 @@ export function initLessonScreen(
function setPhase(phase: LessonPhase): void {
const labels: Record<LessonPhase, string> = {
discover: "Entdecken",
practice: "Üben",
words: "Wörter",
practice:
"Jetzt kannst du ueben! Druecke die Taste zu dem Buchstaben, der herunterfaellt.",
words: "Jetzt kommen ganze Woerter! Tippe die Buchstaben nacheinander ein.",
};
phaseIndicator.textContent = labels[phase];
}
@@ -471,12 +472,6 @@ export function initLessonScreen(
async function runPracticePhase(): Promise<void> {
setPhase("practice");
companionText.textContent =
"Jetzt kannst du ueben! Druecke die Taste zu dem Buchstaben, der herunterfaellt.";
companionArea.style.display = "flex";
await new Promise<void>((resolve) => setTimeout(resolve, 2500));
if (cancelled) return;
companionText.textContent = "";
const state = createExerciseState(level);
return new Promise<void>((resolve) => {
runLetterExercise(state, resolve);
@@ -485,12 +480,6 @@ export function initLessonScreen(
async function runWordsPhase(): Promise<void> {
setPhase("words");
companionText.textContent =
"Jetzt kommen ganze Woerter! Tippe die Buchstaben nacheinander ein.";
companionArea.style.display = "flex";
await new Promise<void>((resolve) => setTimeout(resolve, 2500));
if (cancelled) return;
companionText.textContent = "";
const wordCount = 4;
let words: string[];
if (isReview) {