diff --git a/lib/widget/back.dart b/lib/widget/back.dart index 587a69b3..d93a86d0 100644 --- a/lib/widget/back.dart +++ b/lib/widget/back.dart @@ -7,13 +7,15 @@ import "package:flutter/cupertino.dart"; import "package:flutter/material.dart"; -Widget backButton(BuildContext context) { +import "package:inventree/widget/drawer.dart"; + +Widget backButton(BuildContext context, GlobalKey key) { return GestureDetector( onLongPress: () { - while (Navigator.of(context).canPop()) { - Navigator.of(context).pop(); - } + // Display the menu + key.currentState!.openDrawer(); + print("hello?"); }, child: IconButton( icon: BackButtonIcon(), diff --git a/lib/widget/drawer.dart b/lib/widget/drawer.dart index 93a9cdf7..af865ca1 100644 --- a/lib/widget/drawer.dart +++ b/lib/widget/drawer.dart @@ -28,7 +28,9 @@ class InvenTreeDrawer extends StatelessWidget { void _home() { _closeDrawer(); - Navigator.pushNamedAndRemoveUntil(context, "/", (r) => false); + while (Navigator.of(context).canPop()) { + Navigator.of(context).pop(); + } } void _search() { @@ -37,12 +39,7 @@ class InvenTreeDrawer extends StatelessWidget { _closeDrawer(); - showSearch( - context: context, - delegate: PartSearchDelegate(context) - ); - - //Navigator.push(context, MaterialPageRoute(builder: (context) => SearchWidget())); + // TODO: Open search dialog } /* @@ -56,48 +53,6 @@ class InvenTreeDrawer extends StatelessWidget { scanQrCode(context); } - /* - * Display the top-level PartCategory list - */ - void _showParts() { - if (!InvenTreeAPI().checkConnection(context)) return; - - _closeDrawer(); - Navigator.push(context, MaterialPageRoute(builder: (context) => CategoryDisplayWidget(null))); - } - - /* - * Display the top-level StockLocation list - */ - void _showStock() { - if (!InvenTreeAPI().checkConnection(context)) return; - _closeDrawer(); - Navigator.push(context, MaterialPageRoute(builder: (context) => LocationDisplayWidget(null))); - } - - /* - void _showSuppliers() { - if (!InvenTreeAPI().checkConnection(context)) return; - _closeDrawer(); - - Navigator.push(context, MaterialPageRoute(builder: (context) => CompanyListWidget(L10().suppliers, {"is_supplier": "true"}))); - } - - void _showManufacturers() { - if (!InvenTreeAPI().checkConnection(context)) return; - _closeDrawer(); - - Navigator.push(context, MaterialPageRoute(builder: (context) => CompanyListWidget(L10().manufacturers, {"is_manufacturer": "true"}))); - } - - void _showCustomers() { - if (!InvenTreeAPI().checkConnection(context)) return; - _closeDrawer(); - - Navigator.push(context, MaterialPageRoute(builder: (context) => CompanyListWidget(L10().customers, {"is_customer": "true"}))); - } - */ - /* * Load settings widget */ @@ -114,11 +69,7 @@ class InvenTreeDrawer extends StatelessWidget { context: context, tiles: [ ListTile( - leading: Image.asset( - "assets/image/icon.png", - fit: BoxFit.scaleDown, - width: 30, - ), + leading: FaIcon(FontAwesomeIcons.home), title: Text( L10().appTitle, style: TextStyle(fontWeight: FontWeight.bold), @@ -135,35 +86,6 @@ class InvenTreeDrawer extends StatelessWidget { leading: FaIcon(FontAwesomeIcons.search), onTap: _search, ), - ListTile( - title: Text(L10().parts), - leading: Icon(Icons.category), - onTap: _showParts, - ), - ListTile( - title: Text(L10().stock), - leading: FaIcon(FontAwesomeIcons.boxes), - onTap: _showStock, - ), - - /* - ListTile( - title: Text("Suppliers"), - leading: FaIcon(FontAwesomeIcons.building), - onTap: _showSuppliers, - ), - ListTile( - title: Text("Manufacturers"), - leading: FaIcon(FontAwesomeIcons.industry), - onTap: _showManufacturers, - ), - ListTile( - title: Text("Customers"), - leading: FaIcon(FontAwesomeIcons.users), - onTap: _showCustomers, - ), - */ - ListTile( title: Text(L10().settings), leading: Icon(Icons.settings), diff --git a/lib/widget/refreshable_state.dart b/lib/widget/refreshable_state.dart index 0b8cd2b8..f3e59f3e 100644 --- a/lib/widget/refreshable_state.dart +++ b/lib/widget/refreshable_state.dart @@ -62,15 +62,6 @@ abstract class RefreshableState extends State { }); } - // Function to construct an appbar (override if needed) - AppBar getAppBar(BuildContext context) { - return AppBar( - title: Text(getAppBarTitle(context)), - actions: getAppBarActions(context), - leading: backButton(context), - ); - } - // Function to construct a drawer (override if needed) Widget getDrawer(BuildContext context) { return InvenTreeDrawer(context); @@ -96,11 +87,15 @@ abstract class RefreshableState extends State { // Save the context for future use _context = context; - + return Scaffold( key: refreshableKey, - appBar: getAppBar(context), - drawer: null, + appBar: AppBar( + title: Text(getAppBarTitle(context)), + actions: getAppBarActions(context), + leading: backButton(context, refreshableKey), + ), + drawer: getDrawer(context), floatingActionButton: getFab(context), body: Builder( builder: (BuildContext context) {