Start-Sequenz ergänzt: Splash-Screen, dann Startbildschirm mit Neues Projekt/Projekt öffnen/Zuletzt geöffnet.

Zuletzt-geöffnet-Liste (state/recentProjects.ts) trägt sich beim Öffnen und
beim Speichern automatisch ein, inkl. Öffnen über einen bekannten Pfad ohne
Dialog (verwaiste Einträge fliegen raus, wenn die Datei fehlt). Der Splash
wartet bewusst nicht auf den Update-Check — der läuft unabhängig im
Hintergrund weiter, damit ein langsames Netz den Start nie verzögert.
This commit is contained in:
2026-07-31 17:40:35 +02:00
parent fc31ef9f44
commit 06c0143d32
11 changed files with 407 additions and 8 deletions
+6 -5
View File
@@ -8,7 +8,7 @@
// laufen. Die Slice tippt daher nur ihre eigenen Felder; `get()` liefert
// RootState (siehe appStore.ts), wir greifen punktuell auf View-Felder zu.
import { emptyProject } from "../model/sampleProject";
import { sampleProject } from "../model/sampleProject";
import {
flattenCategories,
recomputeFloorElevations,
@@ -363,10 +363,11 @@ export function createProjectSlice(
return {
...history,
// TEMPORÄR für manuellen Test (Nutzer-Wunsch): leeres Projekt statt Demo-
// Haus. NICHT committen — vor dem nächsten echten Commit zurück auf
// `sampleProject` stellen.
project: emptyProject,
// Store-Default beim Modul-Laden — sichtbar nur ganz kurz HINTER dem
// Splash/Startbildschirm (App.tsx bootPhase: splash → start → editor),
// bevor eine der drei Optionen (Neu/Öffnen/Zuletzt) das echte Projekt
// setzt. Der konkrete Wert spielt daher praktisch keine Rolle mehr.
project: sampleProject,
setProject,