Full width vendor editor

This commit is contained in:
Hillel Coren 2021-08-03 11:33:27 +03:00
parent 6a9e7d4c4d
commit 6edf33a452
8 changed files with 100 additions and 107 deletions

View File

@ -174,7 +174,7 @@ class EditScaffold extends StatelessWidget {
enabled: isEnabled, enabled: isEnabled,
) )
], ],
bottom: appBarBottom, bottom: isFullscreen ? null : appBarBottom,
), ),
bottomNavigationBar: bottomNavigationBar, bottomNavigationBar: bottomNavigationBar,
floatingActionButtonLocation: FloatingActionButtonLocation.endDocked, floatingActionButtonLocation: FloatingActionButtonLocation.endDocked,

View File

@ -70,32 +70,30 @@ class _ClientEditState extends State<ClientEdit>
viewModel.onSavePressed(context); viewModel.onSavePressed(context);
}, },
appBarBottom: isFullscreen appBarBottom: TabBar(
? null controller: _controller,
: TabBar( isScrollable: true,
controller: _controller, tabs: [
isScrollable: true, Tab(
tabs: [ text: localization.details,
Tab( ),
text: localization.details, Tab(
), text: localization.contacts,
Tab( ),
text: localization.contacts, Tab(
), text: localization.notes,
Tab( ),
text: localization.notes, Tab(
), text: localization.settings,
Tab( ),
text: localization.settings, Tab(
), text: localization.billingAddress,
Tab( ),
text: localization.billingAddress, Tab(
), text: localization.shippingAddress,
Tab( ),
text: localization.shippingAddress, ],
), ),
],
),
body: Form( body: Form(
key: _formKey, key: _formKey,
child: isFullscreen child: isFullscreen

View File

@ -98,26 +98,24 @@ class _CreditEditState extends State<CreditEdit>
EntityAction.emailCredit, EntityAction.emailCredit,
], ],
onActionPressed: (context, action) => _onSavePressed(context, action), onActionPressed: (context, action) => _onSavePressed(context, action),
appBarBottom: isFullscreen appBarBottom: TabBar(
? null controller: _controller,
: TabBar( //isScrollable: true,
controller: _controller, tabs: [
//isScrollable: true, Tab(
tabs: [ text: localization.details,
Tab( ),
text: localization.details, Tab(
), text: localization.contacts,
Tab( ),
text: localization.contacts, Tab(
), text: localization.items,
Tab( ),
text: localization.items, Tab(
), text: localization.notes,
Tab( ),
text: localization.notes, ],
), ),
],
),
body: Form( body: Form(
key: _formKey, key: _formKey,
child: isFullscreen child: isFullscreen

View File

@ -103,29 +103,27 @@ class _InvoiceEditState extends State<InvoiceEdit>
EntityAction.markPaid, EntityAction.markPaid,
], ],
onActionPressed: (context, action) => _onSavePressed(context, action), onActionPressed: (context, action) => _onSavePressed(context, action),
appBarBottom: isFullscreen appBarBottom: TabBar(
? null controller: _controller,
: TabBar( isScrollable: true,
controller: _controller, tabs: [
isScrollable: true, Tab(
tabs: [ text: localization.details,
Tab( ),
text: localization.details, Tab(
), text: localization.contacts,
Tab( ),
text: localization.contacts, Tab(
), text: localization.items,
Tab( ),
text: localization.items, Tab(
), text: localization.notes,
Tab( ),
text: localization.notes, Tab(
), text: localization.pdf,
Tab( ),
text: localization.pdf, ],
), ),
],
),
body: Form( body: Form(
key: _formKey, key: _formKey,
child: isFullscreen child: isFullscreen

View File

@ -97,26 +97,24 @@ class _QuoteEditState extends State<QuoteEdit>
EntityAction.emailQuote, EntityAction.emailQuote,
], ],
onActionPressed: (context, action) => _onSavePressed(context, action), onActionPressed: (context, action) => _onSavePressed(context, action),
appBarBottom: isFullscreen appBarBottom: TabBar(
? null controller: _controller,
: TabBar( //isScrollable: true,
controller: _controller, tabs: [
//isScrollable: true, Tab(
tabs: [ text: localization.details,
Tab( ),
text: localization.details, Tab(
), text: localization.contacts,
Tab( ),
text: localization.contacts, Tab(
), text: localization.items,
Tab( ),
text: localization.items, Tab(
), text: localization.notes,
Tab( ),
text: localization.notes, ],
), ),
],
),
body: Form( body: Form(
key: _formKey, key: _formKey,
child: isFullscreen child: isFullscreen

View File

@ -98,9 +98,7 @@ class _RecurringInvoiceEditState extends State<RecurringInvoiceEdit>
EntityAction.viewPdf, EntityAction.viewPdf,
], ],
onActionPressed: (context, action) => _onSavePressed(context, action), onActionPressed: (context, action) => _onSavePressed(context, action),
appBarBottom: isFullscreen appBarBottom:TabBar(
? null
: TabBar(
controller: _controller, controller: _controller,
//isScrollable: true, //isScrollable: true,
tabs: [ tabs: [

View File

@ -102,20 +102,18 @@ class _TaskEditState extends State<TaskEdit>
viewModel.onSavePressed(context); viewModel.onSavePressed(context);
}, },
appBarBottom: isFullscreen appBarBottom: TabBar(
? null controller: _controller,
: TabBar( //isScrollable: true,
controller: _controller, tabs: [
//isScrollable: true, Tab(
tabs: [ text: localization.details,
Tab( ),
text: localization.details, Tab(
), text: localization.times,
Tab( ),
text: localization.times, ],
), ),
],
),
body: Form( body: Form(
key: _formKey, key: _formKey,
child: isFullscreen child: isFullscreen

View File

@ -1,5 +1,6 @@
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:invoiceninja_flutter/data/models/entities.dart';
import 'package:invoiceninja_flutter/ui/app/edit_scaffold.dart'; import 'package:invoiceninja_flutter/ui/app/edit_scaffold.dart';
import 'package:invoiceninja_flutter/ui/vendor/edit/vendor_edit_address.dart'; import 'package:invoiceninja_flutter/ui/vendor/edit/vendor_edit_address.dart';
import 'package:invoiceninja_flutter/ui/vendor/edit/vendor_edit_contacts_vm.dart'; import 'package:invoiceninja_flutter/ui/vendor/edit/vendor_edit_contacts_vm.dart';
@ -45,8 +46,12 @@ class _VendorEditState extends State<VendorEdit>
final localization = AppLocalization.of(context); final localization = AppLocalization.of(context);
final viewModel = widget.viewModel; final viewModel = widget.viewModel;
final vendor = viewModel.vendor; final vendor = viewModel.vendor;
final state = viewModel.state;
final prefState = state.prefState;
final isFullscreen = prefState.isEditorFullScreen(EntityType.vendor);
return EditScaffold( return EditScaffold(
isFullscreen: isFullscreen,
entity: vendor, entity: vendor,
title: vendor.isNew ? localization.newVendor : localization.editVendor, title: vendor.isNew ? localization.newVendor : localization.editVendor,
onCancelPressed: (context) => viewModel.onCancelPressed(context), onCancelPressed: (context) => viewModel.onCancelPressed(context),