From 7c366643be9fccc8bf22523c2b7a2e385dfaa7c9 Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Sun, 15 Oct 2023 14:50:40 +0300 Subject: [PATCH] Bug: select schedule tab on recurring invoice and then select another record --- lib/ui/expense/view/expense_view.dart | 9 ++++++++- lib/ui/expense/view/expense_view_documents.dart | 4 +++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/ui/expense/view/expense_view.dart b/lib/ui/expense/view/expense_view.dart index a8837ca3f..5aee95bd8 100644 --- a/lib/ui/expense/view/expense_view.dart +++ b/lib/ui/expense/view/expense_view.dart @@ -130,6 +130,8 @@ class _ExpenseViewState extends State RefreshIndicator( onRefresh: () => viewModel.onRefreshed!(context), child: ExpenseOverview( + key: ValueKey( + '${viewModel.expense.id}-${viewModel.expense.loadedAt}'), viewModel: viewModel, isFilter: widget.isFilter, ), @@ -138,13 +140,18 @@ class _ExpenseViewState extends State RefreshIndicator( onRefresh: () => viewModel.onRefreshed!(context), child: ExpenseViewDocuments( + key: ValueKey( + '${viewModel.expense.id}-${viewModel.expense.loadedAt}'), viewModel: viewModel, expense: viewModel.expense), ), if (expense.isRecurring) RefreshIndicator( onRefresh: () => viewModel.onRefreshed!(context), - child: ExpenseViewSchedule(viewModel: viewModel), + child: ExpenseViewSchedule( + key: ValueKey( + '${viewModel.expense.id}-${viewModel.expense.loadedAt}'), + viewModel: viewModel), ), ], ) diff --git a/lib/ui/expense/view/expense_view_documents.dart b/lib/ui/expense/view/expense_view_documents.dart index 360e0b60c..299c3dedd 100644 --- a/lib/ui/expense/view/expense_view_documents.dart +++ b/lib/ui/expense/view/expense_view_documents.dart @@ -10,7 +10,9 @@ import 'package:invoiceninja_flutter/ui/app/document_grid.dart'; import 'package:invoiceninja_flutter/ui/expense/view/expense_view_vm.dart'; class ExpenseViewDocuments extends StatelessWidget { - const ExpenseViewDocuments({required this.expense, required this.viewModel}); + const ExpenseViewDocuments( + {Key? key, required this.expense, required this.viewModel}) + : super(key: key); final AbstractExpenseViewVM viewModel; final ExpenseEntity? expense;