Tablet layout
This commit is contained in:
parent
8ac5642c06
commit
e06fe9b36a
|
|
@ -1,10 +1,15 @@
|
|||
import 'package:invoiceninja_flutter/data/models/models.dart';
|
||||
import 'package:invoiceninja_flutter/redux/client/client_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/expense/expense_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/invoice/invoice_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/payment/payment_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/product/product_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/project/project_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/quote/quote_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/static/static_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/client/client_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/invoice/invoice_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/task/task_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/ui/entity_ui_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/ui/ui_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
|
||||
|
|
@ -18,6 +23,7 @@ import 'package:built_value/serializer.dart';
|
|||
// STARTER: import - do not remove comment
|
||||
import 'package:invoiceninja_flutter/redux/document/document_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/expense/expense_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/vendor/vendor_selectors.dart';
|
||||
import 'package:invoiceninja_flutter/redux/vendor/vendor_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/task/task_state.dart';
|
||||
import 'package:invoiceninja_flutter/redux/project/project_state.dart';
|
||||
|
|
@ -217,6 +223,18 @@ abstract class AppState implements Built<AppState, AppStateBuilder> {
|
|||
return hasProductChanges(productUIState.editing, productState.map);
|
||||
case InvoiceEditScreen.route:
|
||||
return hasInvoiceChanges(invoiceUIState.editing, invoiceState.map);
|
||||
case PaymentEditScreen.route:
|
||||
return hasPaymentChanges(paymentUIState.editing, paymentState.map);
|
||||
case QuoteEditScreen.route:
|
||||
return hasQuoteChanges(quoteUIState.editing, quoteState.map);
|
||||
case ProjectEditScreen.route:
|
||||
return hasProjectChanges(projectUIState.editing, projectState.map);
|
||||
case TaskEditScreen.route:
|
||||
return hasTaskChanges(taskUIState.editing, taskState.map);
|
||||
case VendorEditScreen.route:
|
||||
return hasVendorChanges(vendorUIState.editing, vendorState.map);
|
||||
case ExpenseEditScreen.route:
|
||||
return hasExpenseChanges(expenseUIState.editing, expenseState.map);
|
||||
}
|
||||
|
||||
if (uiState.currentRoute.endsWith('/edit')) {
|
||||
|
|
|
|||
|
|
@ -203,3 +203,8 @@ List<int> clientExpenseList(
|
|||
|
||||
return list;
|
||||
}
|
||||
|
||||
|
||||
bool hasExpenseChanges(
|
||||
ExpenseEntity expense, BuiltMap<int, ExpenseEntity> expenseMap) =>
|
||||
expense.isNew || expense != expenseMap[expense.id];
|
||||
|
|
|
|||
|
|
@ -138,3 +138,7 @@ String invoiceStatsForClient(
|
|||
|
||||
return str;
|
||||
}
|
||||
|
||||
bool hasPaymentChanges(
|
||||
PaymentEntity payment, BuiltMap<int, PaymentEntity> paymentMap) =>
|
||||
payment.isNew || payment != paymentMap[payment.id];
|
||||
|
|
|
|||
|
|
@ -165,3 +165,8 @@ String projectStatsForClient(
|
|||
|
||||
return str;
|
||||
}
|
||||
|
||||
|
||||
bool hasProjectChanges(
|
||||
ProjectEntity project, BuiltMap<int, ProjectEntity> projectMap) =>
|
||||
project.isNew || project != projectMap[project.id];
|
||||
|
|
|
|||
|
|
@ -94,3 +94,7 @@ String quoteStatsForClient(int clientId, BuiltMap<int, InvoiceEntity> quoteMap,
|
|||
|
||||
return str;
|
||||
}
|
||||
|
||||
bool hasQuoteChanges(
|
||||
InvoiceEntity quote, BuiltMap<int, InvoiceEntity> quoteMap) =>
|
||||
quote.isNew || quote != quoteMap[quote.id];
|
||||
|
|
|
|||
|
|
@ -220,3 +220,8 @@ String taskStatsForProject(int projectId, BuiltMap<int, TaskEntity> taskMap,
|
|||
|
||||
return str;
|
||||
}
|
||||
|
||||
|
||||
bool hasTaskChanges(
|
||||
TaskEntity task, BuiltMap<int, TaskEntity> taskMap) =>
|
||||
task.isNew || task != taskMap[task.id];
|
||||
|
|
|
|||
|
|
@ -78,3 +78,8 @@ double calculateVendorBalance(int vendorId, int currencyId,
|
|||
|
||||
return total;
|
||||
}
|
||||
|
||||
|
||||
bool hasVendorChanges(
|
||||
VendorEntity vendor, BuiltMap<int, VendorEntity> vendorMap) =>
|
||||
vendor.isNew || vendor != vendorMap[vendor.id];
|
||||
|
|
|
|||
|
|
@ -27,8 +27,10 @@ class MainScreen extends StatelessWidget {
|
|||
mainIndex = 2;
|
||||
} else if (mainRoute == EntityType.invoice.name) {
|
||||
mainIndex = 3;
|
||||
} else if (mainRoute == 'settings') {
|
||||
} else if (mainRoute == EntityType.payment.name) {
|
||||
mainIndex = 4;
|
||||
} else if (mainRoute == 'settings') {
|
||||
mainIndex = 5;
|
||||
}
|
||||
|
||||
return Row(
|
||||
|
|
@ -55,6 +57,11 @@ class MainScreen extends StatelessWidget {
|
|||
viewWidget: InvoiceViewScreen(),
|
||||
editWidget: InvoiceEditScreen(),
|
||||
),
|
||||
EntityScreens(
|
||||
listWidget: PaymentScreen(),
|
||||
viewWidget: PaymentViewScreen(),
|
||||
editWidget: PaymentEditScreen(),
|
||||
),
|
||||
SettingsScreen(),
|
||||
],
|
||||
),
|
||||
|
|
|
|||
|
|
@ -96,6 +96,7 @@ class _ExpenseEditState extends State<ExpenseEdit>
|
|||
body: Form(
|
||||
key: _formKey,
|
||||
child: TabBarView(
|
||||
key: ValueKey(viewModel.expense.id),
|
||||
controller: _controller,
|
||||
children: <Widget>[
|
||||
ExpenseEditDetails(
|
||||
|
|
|
|||
|
|
@ -111,6 +111,7 @@ class _TaskEditState extends State<TaskEdit>
|
|||
body: Form(
|
||||
key: _formKey,
|
||||
child: TabBarView(
|
||||
key: ValueKey(viewModel.task.id),
|
||||
controller: _controller,
|
||||
children: <Widget>[
|
||||
TaskEditDetailsScreen(),
|
||||
|
|
|
|||
|
|
@ -99,6 +99,7 @@ class _VendorEditState extends State<VendorEdit>
|
|||
body: Form(
|
||||
key: _formKey,
|
||||
child: TabBarView(
|
||||
key: ValueKey(viewModel.vendor.id),
|
||||
controller: _controller,
|
||||
children: <Widget>[
|
||||
VendorEditDetails(
|
||||
|
|
|
|||
Loading…
Reference in New Issue