battery indicator added to the footer

This commit is contained in:
Constantin Leue
2026-08-04 11:11:45 +02:00
parent 66e05f0ffe
commit 98c4d7e270
3 changed files with 172 additions and 0 deletions
@@ -5,6 +5,7 @@ import '../../domain/mission/mission_stats.dart';
import '../../domain/mission/mission_warnings.dart';
import '../../domain/waypoint/flat_waypoint_list.dart';
import '../providers/altitude_profile_provider.dart';
import 'battery_indicator_bar.dart';
import 'bottom_stats_bar.dart';
import 'mini_altitude_profile.dart';
@@ -24,6 +25,7 @@ class MissionFooterBar extends ConsumerWidget {
this.flyMissionStatus,
required this.warnings,
this.showWarningsBanner = true,
this.batteryPercent,
required this.onDetailsTap,
required this.onWarningsTap,
required this.onSettingsTap,
@@ -49,6 +51,12 @@ class MissionFooterBar extends ConsumerWidget {
/// davon unberuehrt, nur die staendig sichtbare Textzeile verschwindet.
/// Default true, damit der Plan-Modus unveraendert bleibt.
final bool showWarningsBanner;
/// Nur im Fly-Modus gesetzt (Doku: "Batterieanzeige im Fly-Modus
/// hinzufuegen") - zeigt den Batteriebalken ueber der BottomStatsBar an,
/// unter einem ggf. ausgeklappten Hoehenprofil. Bleibt im Plan-Modus null
/// (keine Telemetrie), die Anzeige entfaellt dann vollstaendig.
final int? batteryPercent;
final VoidCallback onDetailsTap;
final VoidCallback onWarningsTap;
final VoidCallback onSettingsTap;
@@ -87,6 +95,11 @@ class MissionFooterBar extends ConsumerWidget {
activeIndex: activeIndex,
),
),
if (batteryPercent != null)
Padding(
padding: const EdgeInsets.fromLTRB(0, 4, 0, 0),
child: BatteryIndicatorBar(percent: batteryPercent!),
),
BottomStatsBar(
waypointCount: waypoints.length,
totalDistanceM: totalDistanceM,