Compare commits

...

1 Commits

Author SHA1 Message Date
5b94ab263b move transfer button, hide delete button better
All checks were successful
Release / meta (push) Successful in 28s
Release / linux-build (push) Successful in 54s
Release / web-build (push) Successful in 4m48s
Release / android-build (push) Successful in 15m12s
Release / release-master (push) Successful in 31s
Release / release-dev (push) Successful in 34s
2026-01-06 12:04:34 +00:00
2 changed files with 86 additions and 51 deletions

View File

@@ -744,8 +744,37 @@ Future<void> showTractionDetails(
);
},
),
if (auth.isElevated || canDeleteAsOwner) ...[
const SizedBox(height: 16),
FilledButton.icon(
onPressed: () {
Navigator.of(ctx).pop();
navContext.push(
Uri(
path: '/traction',
queryParameters: {
'selection': 'single',
'transferFromLocoId': loco.id.toString(),
},
).toString(),
extra: {
'selection': 'single',
'transferFromLocoId': loco.id,
},
);
},
icon: const Icon(Icons.swap_horiz),
label: const Text('Transfer allocations'),
),
if (auth.isElevated || canDeleteAsOwner) ...[
const SizedBox(height: 8),
ExpansionTile(
tilePadding: EdgeInsets.zero,
childrenPadding: EdgeInsets.zero,
title: Text(
'More',
style: Theme.of(context).textTheme.titleSmall,
),
children: [
FilledButton.tonal(
style: FilledButton.styleFrom(
backgroundColor:
@@ -764,11 +793,13 @@ Future<void> showTractionDetails(
),
actions: [
TextButton(
onPressed: () => Navigator.of(context).pop(false),
onPressed: () =>
Navigator.of(context).pop(false),
child: const Text('Cancel'),
),
FilledButton(
onPressed: () => Navigator.of(context).pop(true),
onPressed: () =>
Navigator.of(context).pop(true),
style: FilledButton.styleFrom(
backgroundColor:
Theme.of(context).colorScheme.error,
@@ -790,12 +821,16 @@ Future<void> showTractionDetails(
Navigator.of(ctx).pop();
} catch (e) {
messenger.showSnackBar(
SnackBar(content: Text('Failed to delete loco: $e')),
SnackBar(
content: Text('Failed to delete loco: $e')),
);
}
},
child: const Text('Delete loco'),
),
const SizedBox(height: 8),
],
),
],
],
),

View File

@@ -472,7 +472,7 @@ extension DataServiceTraction on DataService {
}) async {
try {
await api.post('/loco/alloc/transfer', {
'loco_id': fromLocoId,
'from_loco_id': fromLocoId,
'to_loco_id': toLocoId,
});
} catch (e) {