This commit is contained in:
Hillel Coren 2019-06-12 18:39:04 +03:00
parent c7191bf202
commit b45ffe6bd3
3 changed files with 14 additions and 6 deletions

View File

@ -69,9 +69,6 @@ Middleware<AppState> _viewClientList() {
store.dispatch(UpdateCurrentRoute(ClientScreen.route));
//Navigator.of(action.context).pushNamedAndRemoveUntil(
// ClientScreen.route, ModalRoute.withName(DashboardScreen.route));
Navigator.of(action.context).pushNamedAndRemoveUntil(
ClientScreen.route, (Route<dynamic> route) => false);
};

View File

@ -11,6 +11,7 @@ import 'package:invoiceninja_flutter/ui/app/dialogs/error_dialog.dart';
import 'package:invoiceninja_flutter/ui/client/client_screen.dart';
import 'package:invoiceninja_flutter/ui/client/edit/client_edit.dart';
import 'package:invoiceninja_flutter/ui/client/view/client_view_vm.dart';
import 'package:invoiceninja_flutter/ui/expense/edit/expense_edit_vm.dart';
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_vm.dart';
import 'package:invoiceninja_flutter/ui/project/edit/project_edit_vm.dart';
import 'package:invoiceninja_flutter/ui/quote/edit/quote_edit_vm.dart';
@ -109,6 +110,7 @@ class ClientEditVM {
QuoteEditScreen.route,
ProjectEditScreen.route,
TaskEditScreen.route,
ExpenseEditScreen.route,
].contains(store.state.uiState.currentRoute)) {
Navigator.of(context).pop(savedClient);
} else {

View File

@ -4,6 +4,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/redux/ui/ui_actions.dart';
import 'package:invoiceninja_flutter/ui/vendor/vendor_screen.dart';
import 'package:invoiceninja_flutter/ui/expense/edit/expense_edit_vm.dart';
import 'package:redux/redux.dart';
import 'package:invoiceninja_flutter/data/models/models.dart';
import 'package:invoiceninja_flutter/ui/app/dialogs/error_dialog.dart';
@ -70,10 +71,18 @@ class VendorEditVM {
store.dispatch(SaveVendorRequest(completer: completer, vendor: vendor));
return completer.future.then((_) {
return completer.future.then((savedVendor) {
if (state.uiState.currentRoute.contains(VendorScreen.route)) {
store.dispatch(UpdateCurrentRoute(VendorViewScreen.route));
}
if (vendor.isNew) {
if ([
ExpenseEditScreen.route,
].contains(store.state.uiState.currentRoute)) {
Navigator.of(context).pop(savedVendor);
} else {
Navigator.of(context)
.pushReplacementNamed(VendorViewScreen.route);
}
} else {
Navigator.of(context).pop(savedVendor);
}