new pipeline
Some checks failed
Release / meta (push) Successful in 2s
Release / android-build (push) Failing after 15s
Release / linux-build (push) Failing after 34s
Release / windows-build (push) Has been cancelled
Release / release-dev (push) Has been cancelled
Release / release-master (push) Has been cancelled

This commit is contained in:
2025-12-11 01:24:44 +00:00
parent 40ee16d2d5
commit e34c689ed9
4 changed files with 232 additions and 155 deletions

View File

@@ -1,3 +1,5 @@
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
import 'package:mileograph_flutter/components/calculator/calculator.dart';
@@ -25,21 +27,19 @@ class _NewEntryPageState extends State<NewEntryPage> {
final _mileageController = TextEditingController();
final _networkController = TextEditingController();
bool _submitting = false;
bool _initialised = false;
bool _useManualMileage = false;
RouteResult? _routeResult;
final List<_TractionItem> _tractionItems = [_TractionItem.marker()];
int? _selectedTripId;
bool _tripsRequested = false;
@override
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback((_) {
if (!_tripsRequested) {
_tripsRequested = true;
context.read<DataService>().fetchTrips();
}
Future.microtask(() {
if (!mounted) return;
final data = context.read<DataService>();
data.fetchClassList();
data.fetchTrips();
});
}
@@ -140,21 +140,6 @@ class _NewEntryPageState extends State<NewEntryPage> {
}
}
@override
void didChangeDependencies() {
super.didChangeDependencies();
if (!_initialised) {
_initialised = true;
WidgetsBinding.instance.addPostFrameCallback((_) {
context.read<DataService>().fetchClassList();
if (!_tripsRequested) {
_tripsRequested = true;
context.read<DataService>().fetchTrips();
}
});
}
}
Future<void> _openCalculator() async {
final result = await Navigator.of(context).push<RouteResult>(
MaterialPageRoute(
@@ -304,6 +289,9 @@ class _NewEntryPageState extends State<NewEntryPage> {
};
await api.post('/add', body);
}
if (mounted) {
context.read<DataService>().refreshLegs();
}
try {
if (!mounted) return;
ScaffoldMessenger.of(context).showSnackBar(