Navigation changes

This commit is contained in:
Hillel Coren 2020-05-19 23:00:12 +03:00
parent b742135589
commit 3fd7790462
6 changed files with 37 additions and 7 deletions

View File

@ -466,6 +466,12 @@ class EntityScreens extends StatelessWidget {
case EntityType.client:
filterChild = editingFIlterEntity ? ClientEditScreen() : ClientViewScreen();
break;
case EntityType.invoice:
filterChild = editingFIlterEntity ? InvoiceViewScreen() : InvoiceViewScreen();
break;
case EntityType.payment:
filterChild = editingFIlterEntity ? PaymentEditScreen() : PaymentViewScreen();
break;
case EntityType.user:
filterChild = editingFIlterEntity ? UserEditScreen() : UserViewScreen();
break;

View File

@ -14,6 +14,7 @@ import 'package:invoiceninja_flutter/ui/app/tables/app_data_table.dart';
import 'package:invoiceninja_flutter/ui/app/tables/app_paginated_data_table.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
import 'package:invoiceninja_flutter/utils/platforms.dart';
class EntityList extends StatefulWidget {
const EntityList({
@ -117,7 +118,7 @@ class _EntityListState extends State<EntityList> {
final listOrTable = () {
if (isList) {
return Column(children: <Widget>[
if (listState.filterEntityId != null)
if (listState.filterEntityId != null && isMobile(context))
ListFilterMessage(
filterEntityId: listState.filterEntityId,
filterEntityType: listState.filterEntityType,

View File

@ -15,6 +15,7 @@ import 'package:invoiceninja_flutter/ui/invoice/view/invoice_view.dart';
import 'package:invoiceninja_flutter/ui/invoice/view/invoice_view_vm.dart';
import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
import 'package:invoiceninja_flutter/utils/platforms.dart';
import 'package:redux/redux.dart';
class CreditViewScreen extends StatelessWidget {
@ -109,8 +110,11 @@ class CreditViewVM extends EntityViewVM {
context: context,
entities: [client],
);
} else {
} else if (isMobile(context)) {
viewEntity(context: context, entity: client);
} else {
store.dispatch(FilterCreditsByEntity(
entityType: EntityType.client, entityId: client.id));
}
},
onEntityAction: (BuildContext context, EntityAction action) =>

View File

@ -14,6 +14,7 @@ import 'package:invoiceninja_flutter/ui/app/snackbar_row.dart';
import 'package:invoiceninja_flutter/ui/invoice/view/invoice_view.dart';
import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
import 'package:invoiceninja_flutter/utils/platforms.dart';
import 'package:redux/redux.dart';
class InvoiceViewScreen extends StatelessWidget {
@ -140,8 +141,11 @@ class InvoiceViewVM extends EntityViewVM {
context: context,
entities: [client],
);
} else {
} else if (isMobile(context)) {
viewEntity(context: context, entity: client);
} else {
store.dispatch(FilterInvoicesByEntity(
entityType: EntityType.client, entityId: client.id));
}
},
onPaymentPressed: (BuildContext context, payment,
@ -152,8 +156,11 @@ class InvoiceViewVM extends EntityViewVM {
client: client,
entities: [payment],
);
} else {
} else if (isMobile(context)) {
viewEntity(context: context, entity: payment);
} else {
store.dispatch(FilterInvoicesByEntity(
entityType: EntityType.payment, entityId: payment.id));
}
},
onPaymentsPressed: (BuildContext context) {

View File

@ -8,6 +8,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/payment/payment_actions.dart';
import 'package:invoiceninja_flutter/ui/app/entities/entity_actions_dialog.dart';
import 'package:invoiceninja_flutter/ui/payment/view/payment_view.dart';
import 'package:invoiceninja_flutter/utils/platforms.dart';
import 'package:redux/redux.dart';
class PaymentViewScreen extends StatelessWidget {
@ -60,8 +61,11 @@ class PaymentViewVM {
onClientPressed: (context, [bool longPress = false]) {
if (longPress) {
showEntityActionsDialog(context: context, entities: [client]);
} else {
} else if (isMobile(context)) {
viewEntity(context: context, entity: client);
} else {
store.dispatch(FilterPaymentsByEntity(
entityType: EntityType.client, entityId: client.id));
}
},
onInvoicePressed: (context, invoiceId, [bool longPress = false]) {
@ -72,8 +76,11 @@ class PaymentViewVM {
entities: [invoice],
client: client,
);
} else {
} else if (isMobile(context)) {
viewEntity(context: context, entity: invoice);
} else {
store.dispatch(FilterPaymentsByEntity(
entityType: EntityType.invoice, entityId: invoice.id));
}
},
onEntityAction: (BuildContext context, EntityAction action) =>

View File

@ -15,6 +15,7 @@ import 'package:invoiceninja_flutter/ui/invoice/view/invoice_view.dart';
import 'package:invoiceninja_flutter/ui/invoice/view/invoice_view_vm.dart';
import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
import 'package:invoiceninja_flutter/utils/platforms.dart';
import 'package:redux/redux.dart';
class QuoteViewScreen extends StatelessWidget {
@ -109,9 +110,13 @@ class QuoteViewVM extends EntityViewVM {
context: context,
entities: [client],
);
} else {
} else if (isMobile(context)) {
viewEntity(context: context, entity: client);
} else {
store.dispatch(FilterQuotesByEntity(
entityType: EntityType.client, entityId: client.id));
}
},
onEntityAction: (BuildContext context, EntityAction action) =>
handleQuoteAction(context, [quote], action),