mirror of
https://github.com/inventree/inventree-app.git
synced 2025-04-28 05:26:47 +00:00
Home screen (#559)
* Use grid view for home screen * Update release notes * Prune dead code
This commit is contained in:
parent
d4b2204baf
commit
2964950b26
@ -1,6 +1,7 @@
|
|||||||
### 0.17.0 - November 2024
|
### 0.17.0 - November 2024
|
||||||
---
|
---
|
||||||
|
|
||||||
|
- Enhanced home-screen display using grid-view
|
||||||
- Improvements for image uploading
|
- Improvements for image uploading
|
||||||
- Provide "upload image" shortcut on Purchase Order detail view
|
- Provide "upload image" shortcut on Purchase Order detail view
|
||||||
- Provide "upload image" shortcut on Sales Order detail view
|
- Provide "upload image" shortcut on Sales Order detail view
|
||||||
|
@ -56,6 +56,7 @@ class _InvenTreeSettingsState extends State<InvenTreeSettingsWidget> {
|
|||||||
Navigator.push(context, MaterialPageRoute(builder: (context) => InvenTreeSelectServerWidget()));
|
Navigator.push(context, MaterialPageRoute(builder: (context) => InvenTreeSelectServerWidget()));
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
Divider(),
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text(L10().appSettings),
|
title: Text(L10().appSettings),
|
||||||
subtitle: Text(L10().appSettingsDetails),
|
subtitle: Text(L10().appSettingsDetails),
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import "dart:async";
|
import "dart:async";
|
||||||
|
import "dart:math";
|
||||||
|
|
||||||
import "package:flutter/material.dart";
|
import "package:flutter/material.dart";
|
||||||
import "package:flutter_tabler_icons/flutter_tabler_icons.dart";
|
import "package:flutter_tabler_icons/flutter_tabler_icons.dart";
|
||||||
@ -187,15 +188,24 @@ class _InvenTreeHomePageState extends State<InvenTreeHomePage> with BaseWidgetPr
|
|||||||
|
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
child: Card(
|
child: Card(
|
||||||
margin: EdgeInsets.symmetric(
|
margin: EdgeInsets.all(5),
|
||||||
vertical: 5,
|
child: Align(
|
||||||
horizontal: 12
|
child: ListTile(
|
||||||
),
|
leading: Icon(
|
||||||
child: ListTile(
|
icon,
|
||||||
leading: Icon(icon, color: connected && allowed ? COLOR_ACTION : Colors.grey),
|
size: 32,
|
||||||
title: Text(label),
|
color: connected && allowed ? COLOR_ACTION : Colors.grey
|
||||||
trailing: trailing,
|
),
|
||||||
),
|
title: Text(
|
||||||
|
label,
|
||||||
|
style: TextStyle(
|
||||||
|
fontSize: 20
|
||||||
|
),
|
||||||
|
),
|
||||||
|
trailing: trailing,
|
||||||
|
),
|
||||||
|
alignment: Alignment.center,
|
||||||
|
)
|
||||||
),
|
),
|
||||||
onTap: () {
|
onTap: () {
|
||||||
if (!allowed) {
|
if (!allowed) {
|
||||||
@ -219,9 +229,7 @@ class _InvenTreeHomePageState extends State<InvenTreeHomePage> with BaseWidgetPr
|
|||||||
*/
|
*/
|
||||||
List<Widget> getListTiles(BuildContext context) {
|
List<Widget> getListTiles(BuildContext context) {
|
||||||
|
|
||||||
List<Widget> tiles = [
|
List<Widget> tiles = [];
|
||||||
Divider(height: 5)
|
|
||||||
];
|
|
||||||
|
|
||||||
// Parts
|
// Parts
|
||||||
if (InvenTreePart().canView) {
|
if (InvenTreePart().canView) {
|
||||||
@ -381,10 +389,26 @@ class _InvenTreeHomePageState extends State<InvenTreeHomePage> with BaseWidgetPr
|
|||||||
return _connectionStatusWidget(context);
|
return _connectionStatusWidget(context);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ListView(
|
double w = MediaQuery.of(context).size.width;
|
||||||
scrollDirection: Axis.vertical,
|
double h = MediaQuery.of(context).size.height;
|
||||||
children: getListTiles(context),
|
|
||||||
|
bool smallScreen = max(w, h) < 1000;
|
||||||
|
|
||||||
|
int vTiles = smallScreen ? 2 : 3;
|
||||||
|
int hTiles = smallScreen ? 1 : 2;
|
||||||
|
double aspect = smallScreen ? 5 : 3;
|
||||||
|
double padding = smallScreen ? 2 : 10;
|
||||||
|
|
||||||
|
return GridView.count(
|
||||||
|
crossAxisCount: w > h ? vTiles : hTiles,
|
||||||
|
children: getListTiles(context),
|
||||||
|
childAspectRatio: aspect,
|
||||||
|
primary: false,
|
||||||
|
crossAxisSpacing: padding,
|
||||||
|
mainAxisSpacing: padding,
|
||||||
|
padding: EdgeInsets.all(padding),
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user