Handle tab changes
This commit is contained in:
parent
d3f2a3bb58
commit
9d0ee048ca
|
|
@ -21,10 +21,12 @@ class ClientView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final ClientViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_ClientViewState createState() => _ClientViewState();
|
||||
|
|
@ -51,6 +53,15 @@ class _ClientViewState extends State<ClientView>
|
|||
store.dispatch(UpdateClientTab(tabIndex: _controller.index));
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ class ClientViewScreen extends StatelessWidget {
|
|||
return ClientView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.clientUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ class CreditViewScreen extends StatelessWidget {
|
|||
return InvoiceView(
|
||||
viewModel: viewModel,
|
||||
isFilter: isFilter,
|
||||
tabIndex: viewModel.state.creditUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -21,10 +21,12 @@ class ExpenseView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final ExpenseViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_ExpenseViewState createState() => _ExpenseViewState();
|
||||
|
|
@ -51,6 +53,15 @@ class _ExpenseViewState extends State<ExpenseView>
|
|||
store.dispatch(UpdateExpenseTab(tabIndex: _controller.index));
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ class ExpenseViewScreen extends StatelessWidget {
|
|||
return ExpenseView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.expenseCategoryUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -23,10 +23,12 @@ class InvoiceView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final EntityViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_InvoiceViewState createState() => new _InvoiceViewState();
|
||||
|
|
@ -76,6 +78,15 @@ class _InvoiceViewState extends State<InvoiceView>
|
|||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ class InvoiceViewScreen extends StatelessWidget {
|
|||
return InvoiceView(
|
||||
viewModel: viewModel,
|
||||
isFilter: isFilter,
|
||||
tabIndex: viewModel.state.invoiceUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -17,10 +17,12 @@ class ProductView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final ProductViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_ProductViewState createState() => _ProductViewState();
|
||||
|
|
@ -47,6 +49,15 @@ class _ProductViewState extends State<ProductView>
|
|||
store.dispatch(UpdateProductTab(tabIndex: _controller.index));
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ class ProductViewScreen extends StatelessWidget {
|
|||
return ProductView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.productUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -17,10 +17,12 @@ class ProjectView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final ProjectViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_ProjectViewState createState() => new _ProjectViewState();
|
||||
|
|
@ -47,6 +49,15 @@ class _ProjectViewState extends State<ProjectView>
|
|||
store.dispatch(UpdateProjectTab(tabIndex: _controller.index));
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ class ProjectViewScreen extends StatelessWidget {
|
|||
return ProjectView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.projectUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ class QuoteViewScreen extends StatelessWidget {
|
|||
return InvoiceView(
|
||||
viewModel: viewModel,
|
||||
isFilter: isFilter,
|
||||
tabIndex: viewModel.state.quoteUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ class RecurringInvoiceViewScreen extends StatelessWidget {
|
|||
return InvoiceView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.recurringInvoiceUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -17,10 +17,12 @@ class TaskView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final TaskViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_TaskViewState createState() => new _TaskViewState();
|
||||
|
|
@ -45,6 +47,15 @@ class _TaskViewState extends State<TaskView>
|
|||
store.dispatch(UpdateTaskTab(tabIndex: _controller.index));
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ class TaskViewScreen extends StatelessWidget {
|
|||
return TaskView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.taskUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
|
|
@ -16,10 +16,12 @@ class VendorView extends StatefulWidget {
|
|||
Key key,
|
||||
@required this.viewModel,
|
||||
@required this.isFilter,
|
||||
@required this.tabIndex,
|
||||
}) : super(key: key);
|
||||
|
||||
final VendorViewVM viewModel;
|
||||
final bool isFilter;
|
||||
final int tabIndex;
|
||||
|
||||
@override
|
||||
_VendorViewState createState() => _VendorViewState();
|
||||
|
|
@ -46,6 +48,15 @@ class _VendorViewState extends State<VendorView>
|
|||
store.dispatch(UpdateVendorTab(tabIndex: _controller.index));
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
||||
if (oldWidget.tabIndex != widget.tabIndex) {
|
||||
_controller.index = widget.tabIndex ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_controller.removeListener(_onTabChanged);
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@ class VendorViewScreen extends StatelessWidget {
|
|||
return VendorView(
|
||||
viewModel: vm,
|
||||
isFilter: isFilter,
|
||||
tabIndex: vm.state.vendorUIState.tabIndex,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
|
|
|||
Loading…
Reference in New Issue