Compare commits

...

2 Commits

Author SHA1 Message Date
2b8e1dc2cb Fixed issue with a specific string as initial duration 2025-02-11 16:59:42 +01:00
b711276674 fixed hero tag issue 2025-02-11 16:57:52 +01:00
3 changed files with 7 additions and 1 deletions

View File

@@ -103,6 +103,7 @@ class _MetadataPageState extends State<MetadataPage> {
),
Padding(padding: EdgeInsets.only(left: 10)),
CookingDurationButton(
heroTag: 1,
selectedDuration: _recipeProvider.recipe.prepTime,
onDurationChanged: _recipeProvider.updatePrepTime,
),
@@ -117,6 +118,7 @@ class _MetadataPageState extends State<MetadataPage> {
),
Padding(padding: EdgeInsets.only(left: 10)),
CookingDurationButton(
heroTag: 2,
selectedDuration: _recipeProvider.recipe.cookTime,
onDurationChanged: _recipeProvider.updateCookTime,
),

View File

@@ -9,12 +9,15 @@ class CookingDurationButton extends StatelessWidget {
required this.selectedDuration,
required this.onDurationChanged,
this.label = '',
required this.heroTag,
});
final String label;
final void Function(Duration duration) onDurationChanged;
final Duration selectedDuration;
final Object heroTag;
@override
Widget build(BuildContext context) {
String text = label;
@@ -22,6 +25,7 @@ class CookingDurationButton extends StatelessWidget {
text = durationToFormattedString(selectedDuration);
}
return FloatingActionButton.extended(
heroTag: heroTag,
onPressed: () => showDialog(
context: context,
builder: (context) => _getDurationDialog(

View File

@@ -26,7 +26,7 @@ class _DurationPickerState extends State<DurationPicker> {
super.initState();
if (widget.initialDuration.inMinutes != 0) {
_timeString =
'${widget.initialDuration.inHours}${widget.initialDuration.inMinutes % 60}';
'${widget.initialDuration.inHours}${(widget.initialDuration.inMinutes % 60).toString().padLeft(2, '0')}';
}
}