From 988eff1e59cbcf75d118116311ccae8500ae2573 Mon Sep 17 00:00:00 2001 From: Tom Bursch Date: Tue, 20 Sep 2022 13:28:28 +0200 Subject: [PATCH] fix: minor ui issues --- lib/l10n/app_de.arb | 1 + lib/l10n/app_en.arb | 1 + lib/pages/home_page/shoppinglist.dart | 1 + lib/pages/item_page.dart | 21 ++++++++++++++++----- lib/services/storage/storage.dart | 1 - lib/widgets/recipe_card.dart | 3 ++- lib/widgets/sliver_item_grid_list.dart | 3 +++ 7 files changed, 24 insertions(+), 7 deletions(-) diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index 8393924c..b60242f3 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -18,6 +18,7 @@ } }, "addRecipeToPlanner": "Zum Essensplan hinzufügen", + "addRecipeToPlannerShort": "Hinzufügen", "address": "Adresse", "addTag": "Add Tag", "admin": "Admin", diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 1a463a5e..b9aeed51 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -18,6 +18,7 @@ } }, "addRecipeToPlanner": "Add to meal plan", + "addRecipeToPlannerShort": "Add to meal plan", "address": "Address", "addTag": "Add Tag", "admin": "Admin", diff --git a/lib/pages/home_page/shoppinglist.dart b/lib/pages/home_page/shoppinglist.dart index e853992a..68549bef 100644 --- a/lib/pages/home_page/shoppinglist.dart +++ b/lib/pages/home_page/shoppinglist.dart @@ -211,6 +211,7 @@ class _ShoppinglistPageState extends State { cubit.add(item.name, item.description), categories: state.categories, onRefresh: cubit.refresh, + isDescriptionEditable: false, isLoading: state is LoadingShoppinglistCubitState, isList: state.style == ShoppinglistStyle.list, ), diff --git a/lib/pages/item_page.dart b/lib/pages/item_page.dart index 593492f2..28080f86 100644 --- a/lib/pages/item_page.dart +++ b/lib/pages/item_page.dart @@ -12,9 +12,14 @@ import 'package:kitchenowl/widgets/recipe_item.dart'; class ItemPage extends StatefulWidget { final T item; final List categories; + final bool isDescriptionEditable; - const ItemPage({Key? key, required this.item, this.categories = const []}) - : super(key: key); + const ItemPage({ + super.key, + required this.item, + this.categories = const [], + this.isDescriptionEditable = true, + }); @override _ItemPageState createState() => _ItemPageState(); @@ -89,7 +94,8 @@ class _ItemPageState extends State> { onRefresh: cubit.refresh, child: CustomScrollView( slivers: [ - if (widget.item is ItemWithDescription) + if (widget.isDescriptionEditable && + widget.item is ItemWithDescription) SliverPadding( padding: const EdgeInsets.all(16), sliver: SliverToBoxAdapter( @@ -122,7 +128,10 @@ class _ItemPageState extends State> { if (widget.item is! RecipeItem) SliverPadding( padding: EdgeInsets.only( - top: (widget.item is ItemWithDescription) ? 0 : 16, + top: (widget.isDescriptionEditable && + widget.item is ItemWithDescription) + ? 0 + : 16, bottom: 16, left: 16, right: 16, @@ -208,7 +217,9 @@ class _ItemPageState extends State> { : null, ); }, - childCount: state.recipes.length + 1, + childCount: state.recipes.isEmpty + ? 0 + : state.recipes.length + 1, ), ), ); diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart index 41815718..565f782d 100644 --- a/lib/services/storage/storage.dart +++ b/lib/services/storage/storage.dart @@ -1,4 +1,3 @@ -import 'package:flutter/foundation.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:shared_preferences/shared_preferences.dart'; diff --git a/lib/widgets/recipe_card.dart b/lib/widgets/recipe_card.dart index 38c0489a..fb56f536 100644 --- a/lib/widgets/recipe_card.dart +++ b/lib/widgets/recipe_card.dart @@ -160,7 +160,8 @@ class RecipeCard extends StatelessWidget { ), onPressed: onLongPressed, child: Text( - AppLocalizations.of(context)!.addRecipeToPlanner, + AppLocalizations.of(context)! + .addRecipeToPlannerShort, ), ), ], diff --git a/lib/widgets/sliver_item_grid_list.dart b/lib/widgets/sliver_item_grid_list.dart index e63b46d5..39a0e897 100644 --- a/lib/widgets/sliver_item_grid_list.dart +++ b/lib/widgets/sliver_item_grid_list.dart @@ -17,6 +17,7 @@ class SliverItemGridList extends StatelessWidget { final bool isList; final bool Function(T)? selected; final bool isLoading; + final bool isDescriptionEditable; const SliverItemGridList({ super.key, @@ -28,6 +29,7 @@ class SliverItemGridList extends StatelessWidget { this.isList = false, this.selected, this.isLoading = false, + this.isDescriptionEditable = true, }); @override @@ -67,6 +69,7 @@ class SliverItemGridList extends StatelessWidget { builder: (BuildContext context) => ItemPage( item: item, categories: categories ?? const [], + isDescriptionEditable: isDescriptionEditable, ), ), );