feat(tour): Tour-Neuladen ueberall + Drawer in Leer-/Ladezustaenden

- PhaseStepper: Reload-Button (RefreshTour, Spinner waehrend Refresh)
- Beladen-Empty-State: 'Neu laden'-Button (LoadTour) + Hinweis 'keine Tour verfuegbar'
- Drawer + AppBar in TourEmpty/Lade-Branches (Beladen-Uebersicht, Lieferungen auswaehlen, Sortieren) -> kein Festsitzen ohne Logout

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dennis Nemec
2026-06-18 13:08:18 +02:00
parent 467f4b4ed2
commit a206636ed0
4 changed files with 91 additions and 6 deletions

View File

@ -374,6 +374,7 @@ class _DeliverySelectionPageState extends State<DeliverySelectionPage> {
}
if (state is TourEmpty) {
return Scaffold(
drawer: const HomeAppDrawer(),
appBar: AppBar(title: const Text('Lieferungen auswählen')),
body: const Center(
child: Padding(
@ -388,8 +389,11 @@ class _DeliverySelectionPageState extends State<DeliverySelectionPage> {
);
}
if (state is! TourLoaded) {
return const Scaffold(
body: Center(child: CircularProgressIndicator()),
// Drawer auch hier — Fahrer soll im Lade-Hang ausloggen können.
return Scaffold(
drawer: const HomeAppDrawer(),
appBar: AppBar(title: const Text('Lieferungen auswählen')),
body: const Center(child: CircularProgressIndicator()),
);
}

View File

@ -223,15 +223,21 @@ class _DeliverySortPageState extends State<DeliverySortPage> {
}
},
builder: (context, state) {
// Drawer in jedem Branch beibehalten — sonst sitzt der Fahrer im
// „Keine Tour heute"- oder Lade-Screen fest, ohne Zugriff auf
// Einstellungen / Logout.
if (state is TourEmpty) {
return Scaffold(
drawer: const HomeAppDrawer(),
appBar: AppBar(title: const Text('Sortieren')),
body: _emptyState(),
);
}
if (state is! TourLoaded) {
return const Scaffold(
body: Center(child: CircularProgressIndicator()),
return Scaffold(
drawer: const HomeAppDrawer(),
appBar: AppBar(title: const Text('Sortieren')),
body: const Center(child: CircularProgressIndicator()),
);
}