diff --git a/assets/release_notes.md b/assets/release_notes.md index 07a3df35..f35de388 100644 --- a/assets/release_notes.md +++ b/assets/release_notes.md @@ -6,6 +6,7 @@ - Bug fix for stock history widget - Improved display of stock history widget +- Theme improvements for dark mode ### 0.11.3 - April 2023 --- diff --git a/lib/app_colors.dart b/lib/app_colors.dart index 065a86f1..a5556a06 100644 --- a/lib/app_colors.dart +++ b/lib/app_colors.dart @@ -1,16 +1,21 @@ -import "dart:ui"; +import "package:flutter/material.dart"; +import "package:one_context/one_context.dart"; const Color COLOR_GRAY_LIGHT = Color.fromRGBO(150, 150, 150, 1); -const Color COLOR_CLICK = Color.fromRGBO(150, 120, 100, 0.9); +// Return an "action" color based on the current theme +Color get COLOR_ACTION { -const Color COLOR_BLUE = Color.fromRGBO(0, 0, 250, 1); + BuildContext? context = OneContext().context; -const Color COLOR_STAR = Color.fromRGBO(250, 250, 100, 1); + if (context != null) { + return Theme.of(context).indicatorColor; + } else { + return Colors.lightBlue; + } +} const Color COLOR_WARNING = Color.fromRGBO(250, 150, 50, 1); const Color COLOR_DANGER = Color.fromRGBO(250, 50, 50, 1); const Color COLOR_SUCCESS = Color.fromRGBO(50, 250, 50, 1); -const Color COLOR_PROGRESS = Color.fromRGBO(50, 50, 250, 1); - -const Color COLOR_SELECTED = Color.fromRGBO(0, 0, 0, 0.05); \ No newline at end of file +const Color COLOR_PROGRESS = Color.fromRGBO(50, 50, 250, 1); \ No newline at end of file diff --git a/lib/settings/about.dart b/lib/settings/about.dart index b398ed39..84578e03 100644 --- a/lib/settings/about.dart +++ b/lib/settings/about.dart @@ -165,7 +165,7 @@ class InvenTreeAboutWidget extends StatelessWidget { ListTile( title: Text(L10().releaseNotes), subtitle: Text(L10().appReleaseNotes), - leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_ACTION), onTap: () { _releaseNotes(context); }, @@ -176,7 +176,7 @@ class InvenTreeAboutWidget extends StatelessWidget { ListTile( title: Text(L10().credits), subtitle: Text(L10().appCredits), - leading: FaIcon(FontAwesomeIcons.bullhorn, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.bullhorn, color: COLOR_ACTION), onTap: () { _credits(context); } @@ -187,7 +187,7 @@ class InvenTreeAboutWidget extends StatelessWidget { ListTile( title: Text(L10().documentation), subtitle: Text("https://docs.inventree.org"), - leading: FaIcon(FontAwesomeIcons.book, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.book, color: COLOR_ACTION), onTap: () { _openDocs(); }, @@ -198,7 +198,7 @@ class InvenTreeAboutWidget extends StatelessWidget { ListTile( title: Text(L10().translate), subtitle: Text(L10().translateHelp), - leading: FaIcon(FontAwesomeIcons.language, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.language, color: COLOR_ACTION), onTap: () { _translate(); } @@ -209,7 +209,7 @@ class InvenTreeAboutWidget extends StatelessWidget { ListTile( title: Text(L10().reportBug), subtitle: Text(L10().reportBugDescription), - leading: FaIcon(FontAwesomeIcons.bug, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.bug, color: COLOR_ACTION), onTap: () { _reportBug(context); }, diff --git a/lib/settings/login.dart b/lib/settings/login.dart index aa9a9d49..185a7797 100644 --- a/lib/settings/login.dart +++ b/lib/settings/login.dart @@ -137,7 +137,7 @@ class _InvenTreeLoginSettingsState extends State { title: Text( profile.name, ), - tileColor: profile.selected ? COLOR_SELECTED : null, + tileColor: profile.selected ? Theme.of(context).secondaryHeaderColor : null, subtitle: Text("${profile.server}"), trailing: _getProfileIcon(profile), onTap: () { diff --git a/lib/settings/settings.dart b/lib/settings/settings.dart index ed589e1e..b202e6de 100644 --- a/lib/settings/settings.dart +++ b/lib/settings/settings.dart @@ -47,7 +47,7 @@ class _InvenTreeSettingsState extends State { ListTile( title: Text(L10().server), subtitle: Text(L10().configureServer), - leading: FaIcon(FontAwesomeIcons.server, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.server, color: COLOR_ACTION), onTap: () { Navigator.push(context, MaterialPageRoute(builder: (context) => InvenTreeLoginSettingsWidget())); }, @@ -55,7 +55,7 @@ class _InvenTreeSettingsState extends State { ListTile( title: Text(L10().appSettings), subtitle: Text(L10().appSettingsDetails), - leading: FaIcon(FontAwesomeIcons.gears, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.gears, color: COLOR_ACTION), onTap: () { Navigator.push(context, MaterialPageRoute(builder: (context) => InvenTreeAppSettingsWidget())); } @@ -63,7 +63,7 @@ class _InvenTreeSettingsState extends State { ListTile( title: Text(L10().homeScreen), subtitle: Text(L10().homeScreenSettings), - leading: FaIcon(FontAwesomeIcons.house, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.house, color: COLOR_ACTION), onTap: () { Navigator.push(context, MaterialPageRoute(builder: (context) => HomeScreenSettingsWidget())); } @@ -71,7 +71,7 @@ class _InvenTreeSettingsState extends State { ListTile( title: Text(L10().part), subtitle: Text(L10().partSettings), - leading: FaIcon(FontAwesomeIcons.shapes, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.shapes, color: COLOR_ACTION), onTap: () { Navigator.push(context, MaterialPageRoute(builder: (context) => InvenTreePartSettingsWidget())); } @@ -79,7 +79,7 @@ class _InvenTreeSettingsState extends State { Divider(), ListTile( title: Text(L10().about), - leading: FaIcon(FontAwesomeIcons.circleInfo), + leading: FaIcon(FontAwesomeIcons.circleInfo, color: COLOR_ACTION), onTap: _about, ) ] diff --git a/lib/widget/attachment_widget.dart b/lib/widget/attachment_widget.dart index 47bcc651..bdfb4155 100644 --- a/lib/widget/attachment_widget.dart +++ b/lib/widget/attachment_widget.dart @@ -170,7 +170,7 @@ class _AttachmentWidgetState extends RefreshableState { tiles.add(ListTile( title: Text(attachment.filename), subtitle: Text(attachment.comment), - leading: FaIcon(attachment.icon, color: COLOR_CLICK), + leading: FaIcon(attachment.icon, color: COLOR_ACTION), onTap: () async { showLoadingOverlay(context); await attachment.downloadAttachment(); @@ -186,7 +186,7 @@ class _AttachmentWidgetState extends RefreshableState { tiles.add(ListTile( title: Text(attachment.link), subtitle: Text(attachment.comment), - leading: FaIcon(FontAwesomeIcons.link, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.link, color: COLOR_ACTION), onTap: () async { var uri = Uri.tryParse(attachment.link.trimLeft()); if (uri != null && await canLaunchUrl(uri)) { diff --git a/lib/widget/category_display.dart b/lib/widget/category_display.dart index 20906871..404150d8 100644 --- a/lib/widget/category_display.dart +++ b/lib/widget/category_display.dart @@ -151,7 +151,7 @@ class _CategoryDisplayState extends RefreshableState { subtitle: Text("${widget.category?.parentPathString}"), leading: FaIcon( FontAwesomeIcons.turnUp, - color: COLOR_CLICK, + color: COLOR_ACTION, ), onTap: () async { diff --git a/lib/widget/company_detail.dart b/lib/widget/company_detail.dart index f5cc36b8..ff62fd46 100644 --- a/lib/widget/company_detail.dart +++ b/lib/widget/company_detail.dart @@ -149,7 +149,7 @@ class _CompanyDetailState extends RefreshableState { if (widget.company.website.isNotEmpty) { tiles.add(ListTile( title: Text("${widget.company.website}"), - leading: FaIcon(FontAwesomeIcons.globe, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.globe, color: COLOR_ACTION), onTap: () async { openLink(widget.company.website); }, @@ -161,7 +161,7 @@ class _CompanyDetailState extends RefreshableState { if (widget.company.email.isNotEmpty) { tiles.add(ListTile( title: Text("${widget.company.email}"), - leading: FaIcon(FontAwesomeIcons.at, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.at, color: COLOR_ACTION), onTap: () async { openLink("mailto:${widget.company.email}"); }, @@ -173,7 +173,7 @@ class _CompanyDetailState extends RefreshableState { if (widget.company.phone.isNotEmpty) { tiles.add(ListTile( title: Text("${widget.company.phone}"), - leading: FaIcon(FontAwesomeIcons.phone, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.phone, color: COLOR_ACTION), onTap: () { openLink("tel:${widget.company.phone}"); }, @@ -186,7 +186,7 @@ class _CompanyDetailState extends RefreshableState { if (widget.company.link.isNotEmpty) { tiles.add(ListTile( title: Text("${widget.company.link}"), - leading: FaIcon(FontAwesomeIcons.link, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.link, color: COLOR_ACTION), onTap: () { widget.company.openLink(); }, @@ -205,7 +205,7 @@ class _CompanyDetailState extends RefreshableState { tiles.add( ListTile( title: Text(L10().supplierParts), - leading: FaIcon(FontAwesomeIcons.building, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.building, color: COLOR_ACTION), trailing: Text(supplierPartCount.toString()), onTap: () { Navigator.push( @@ -224,7 +224,7 @@ class _CompanyDetailState extends RefreshableState { tiles.add( ListTile( title: Text(L10().purchaseOrders), - leading: FaIcon(FontAwesomeIcons.cartShopping, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.cartShopping, color: COLOR_ACTION), trailing: Text("${outstandingOrders.length}"), onTap: () { Navigator.push( @@ -272,7 +272,7 @@ class _CompanyDetailState extends RefreshableState { if (api.supportCompanyAttachments) { tiles.add(ListTile( title: Text(L10().attachments), - leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_ACTION), trailing: attachmentCount > 0 ? Text(attachmentCount.toString()) : null, onTap: () { Navigator.push( diff --git a/lib/widget/drawer.dart b/lib/widget/drawer.dart index 6f438eca..a745d2bf 100644 --- a/lib/widget/drawer.dart +++ b/lib/widget/drawer.dart @@ -2,6 +2,7 @@ import "package:flutter/material.dart"; import "package:font_awesome_flutter/font_awesome_flutter.dart"; import "package:inventree/api.dart"; +import "package:inventree/app_colors.dart"; import "package:inventree/l10.dart"; import "package:inventree/settings/settings.dart"; import "package:inventree/widget/category_display.dart"; @@ -84,7 +85,7 @@ class InvenTreeDrawer extends StatelessWidget { // "Home" access tiles.add(ListTile( - leading: FaIcon(FontAwesomeIcons.house), + leading: FaIcon(FontAwesomeIcons.house, color: COLOR_ACTION), title: Text( L10().appTitle, style: TextStyle(fontWeight: FontWeight.bold), @@ -98,7 +99,7 @@ class InvenTreeDrawer extends StatelessWidget { tiles.add( ListTile( title: Text(L10().parts), - leading: FaIcon(FontAwesomeIcons.shapes), + leading: FaIcon(FontAwesomeIcons.shapes, color: COLOR_ACTION), onTap: _parts, ) ); @@ -108,7 +109,7 @@ class InvenTreeDrawer extends StatelessWidget { tiles.add( ListTile( title: Text(L10().stock), - leading: FaIcon(FontAwesomeIcons.boxesStacked), + leading: FaIcon(FontAwesomeIcons.boxesStacked, color: COLOR_ACTION), onTap: _stock, ) ); @@ -118,7 +119,7 @@ class InvenTreeDrawer extends StatelessWidget { tiles.add( ListTile( title: Text(L10().purchaseOrders), - leading: FaIcon(FontAwesomeIcons.cartShopping), + leading: FaIcon(FontAwesomeIcons.cartShopping, color: COLOR_ACTION), onTap: _purchaseOrders, ) ); @@ -133,7 +134,7 @@ class InvenTreeDrawer extends StatelessWidget { tiles.add( ListTile( - leading: FaIcon(FontAwesomeIcons.bell), + leading: FaIcon(FontAwesomeIcons.bell, color: COLOR_ACTION), trailing: notification_count > 0 ? Text(notification_count.toString()) : null, title: Text(L10().notifications), onTap: _notifications, @@ -144,7 +145,7 @@ class InvenTreeDrawer extends StatelessWidget { tiles.add( ListTile( title: Text(L10().settings), - leading: Icon(Icons.settings), + leading: Icon(Icons.settings, color: COLOR_ACTION), onTap: _settings, ) ); diff --git a/lib/widget/home.dart b/lib/widget/home.dart index c525c0df..30c3db8f 100644 --- a/lib/widget/home.dart +++ b/lib/widget/home.dart @@ -7,10 +7,8 @@ import "package:font_awesome_flutter/font_awesome_flutter.dart"; import "package:inventree/api.dart"; import "package:inventree/app_colors.dart"; import "package:inventree/preferences.dart"; -import "package:inventree/barcode.dart"; import "package:inventree/l10.dart"; import "package:inventree/settings/login.dart"; -import "package:inventree/settings/settings.dart"; import "package:inventree/user_profile.dart"; import "package:inventree/widget/category_display.dart"; @@ -63,22 +61,12 @@ class _InvenTreeHomePageState extends State with BaseWidgetPr // Selected user profile UserProfile? _profile; - void _scan(BuildContext context) { - if (!InvenTreeAPI().checkConnection()) return; - - scanQrCode(context); - } - void _showParts(BuildContext context) { if (!InvenTreeAPI().checkConnection()) return; Navigator.push(context, MaterialPageRoute(builder: (context) => CategoryDisplayWidget(null))); } - void _showSettings(BuildContext context) { - Navigator.push(context, MaterialPageRoute(builder: (context) => InvenTreeSettingsWidget())); - } - void _showStarredParts(BuildContext context) { if (!InvenTreeAPI().checkConnection()) return; @@ -187,7 +175,7 @@ class _InvenTreeHomePageState extends State with BaseWidgetPr horizontal: 12 ), child: ListTile( - leading: FaIcon(icon, color: connected && allowed ? COLOR_CLICK : Colors.grey), + leading: FaIcon(icon, color: connected && allowed ? COLOR_ACTION : Colors.grey), title: Text(label), trailing: trailing, ), @@ -217,17 +205,9 @@ class _InvenTreeHomePageState extends State with BaseWidgetPr */ List getListTiles(BuildContext context) { - List tiles = []; - - // Barcode scanner - tiles.add(_listTile( - context, - L10().scanBarcode, - Icons.qr_code_scanner, - callback: () { - _scan(context); - } - )); + List tiles = [ + Divider(height: 5) + ]; // Parts tiles.add(_listTile( @@ -314,16 +294,6 @@ class _InvenTreeHomePageState extends State with BaseWidgetPr } */ - // Settings - tiles.add(_listTile( - context, - L10().settings, - FontAwesomeIcons.gears, - callback: () { - _showSettings(context); - } - )); - return tiles; } @@ -338,7 +308,7 @@ class _InvenTreeHomePageState extends State with BaseWidgetPr bool connecting = !InvenTreeAPI().isConnected() && InvenTreeAPI().isConnecting(); Widget leading = FaIcon(FontAwesomeIcons.circleExclamation, color: COLOR_DANGER); - Widget trailing = FaIcon(FontAwesomeIcons.server, color: COLOR_CLICK); + Widget trailing = FaIcon(FontAwesomeIcons.server, color: COLOR_ACTION); String title = L10().serverNotConnected; String subtitle = L10().profileSelectOrCreate; diff --git a/lib/widget/location_display.dart b/lib/widget/location_display.dart index f5518a3e..dec7be66 100644 --- a/lib/widget/location_display.dart +++ b/lib/widget/location_display.dart @@ -295,7 +295,7 @@ class _LocationDisplayState extends RefreshableState { ListTile( title: Text(L10().parentLocation), subtitle: Text("${location!.parentPathString}"), - leading: FaIcon(FontAwesomeIcons.turnUp, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.turnUp, color: COLOR_ACTION), onTap: () async { int parentId = location?.parentId ?? -1; diff --git a/lib/widget/paginator.dart b/lib/widget/paginator.dart index 77f70f5f..e9cc4cf4 100644 --- a/lib/widget/paginator.dart +++ b/lib/widget/paginator.dart @@ -410,7 +410,7 @@ abstract class PaginatedSearchState extends Sta Widget buildSearchInput(BuildContext context) { return ListTile( trailing: orderingOptions.isEmpty ? null : GestureDetector( - child: FaIcon(FontAwesomeIcons.sort, color: COLOR_CLICK), + child: FaIcon(FontAwesomeIcons.sort, color: COLOR_ACTION), onTap: () async { _saveOrderingOptions(context); }, diff --git a/lib/widget/part_detail.dart b/lib/widget/part_detail.dart index be397dc3..7f3b645f 100644 --- a/lib/widget/part_detail.dart +++ b/lib/widget/part_detail.dart @@ -261,7 +261,7 @@ class _PartDisplayState extends RefreshableState { subtitle: Text("${part.description}"), trailing: IconButton( icon: FaIcon(part.starred ? FontAwesomeIcons.solidStar : FontAwesomeIcons.star, - color: part.starred ? COLOR_STAR : null, + color: part.starred ? Colors.yellowAccent : null, ), onPressed: () { _toggleStar(context); @@ -349,7 +349,7 @@ class _PartDisplayState extends RefreshableState { ListTile( title: Text(L10().partCategory), subtitle: Text("${part.categoryName}"), - leading: FaIcon(FontAwesomeIcons.sitemap, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.sitemap, color: COLOR_ACTION), onTap: () async { if (part.categoryId > 0) { @@ -370,7 +370,7 @@ class _PartDisplayState extends RefreshableState { ListTile( title: Text(L10().partCategory), subtitle: Text(L10().partCategoryTopLevel), - leading: FaIcon(FontAwesomeIcons.sitemap, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.sitemap, color: COLOR_ACTION), onTap: () { Navigator.push(context, MaterialPageRoute( builder: (context) => CategoryDisplayWidget(null))); @@ -384,7 +384,7 @@ class _PartDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().variants), - leading: FaIcon(FontAwesomeIcons.shapes, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.shapes, color: COLOR_ACTION), trailing: Text(variantCount.toString()), onTap: () { Navigator.push( @@ -442,7 +442,7 @@ class _PartDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().billOfMaterials), - leading: FaIcon(FontAwesomeIcons.tableList, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.tableList, color: COLOR_ACTION), trailing: Text(bomCount.toString()), ) ); @@ -468,7 +468,7 @@ class _PartDisplayState extends RefreshableState { ListTile( title: Text(L10().usedIn), subtitle: Text(L10().usedInDetails), - leading: FaIcon(FontAwesomeIcons.layerGroup, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.layerGroup, color: COLOR_ACTION), trailing: Text(usedInCount.toString()), onTap: () { Navigator.push( @@ -498,7 +498,7 @@ class _PartDisplayState extends RefreshableState { tiles.add( ListTile( title: Text("${part.link}"), - leading: FaIcon(FontAwesomeIcons.link, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.link, color: COLOR_ACTION), onTap: () { part.openLink(); }, @@ -528,7 +528,7 @@ class _PartDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().suppliers), - leading: FaIcon(FontAwesomeIcons.industry, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.industry, color: COLOR_ACTION), trailing: Text("${part.supplierCount}"), onTap: () { Navigator.push( @@ -547,7 +547,7 @@ class _PartDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().notes), - leading: FaIcon(FontAwesomeIcons.noteSticky, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.noteSticky, color: COLOR_ACTION), trailing: Text(""), onTap: () { Navigator.push( @@ -561,7 +561,7 @@ class _PartDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().attachments), - leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_ACTION), trailing: attachmentCount > 0 ? Text(attachmentCount.toString()) : null, onTap: () { Navigator.push( diff --git a/lib/widget/purchase_order_detail.dart b/lib/widget/purchase_order_detail.dart index 3b7d1eee..06dd8a63 100644 --- a/lib/widget/purchase_order_detail.dart +++ b/lib/widget/purchase_order_detail.dart @@ -205,7 +205,7 @@ class _PurchaseOrderDetailState extends RefreshableState 0 ? Text(attachmentCount.toString()) : null, onTap: () { Navigator.push( diff --git a/lib/widget/search.dart b/lib/widget/search.dart index 07860db0..750717e5 100644 --- a/lib/widget/search.dart +++ b/lib/widget/search.dart @@ -358,7 +358,7 @@ class _SearchDisplayState extends RefreshableState { trailing: GestureDetector( child: FaIcon( searchController.text.isEmpty ? FontAwesomeIcons.magnifyingGlass : FontAwesomeIcons.deleteLeft, - color: searchController.text.isEmpty ? COLOR_CLICK : COLOR_DANGER, + color: searchController.text.isEmpty ? COLOR_ACTION : COLOR_DANGER, ), onTap: () { searchController.clear(); diff --git a/lib/widget/stock_detail.dart b/lib/widget/stock_detail.dart index 5dced705..0149e097 100644 --- a/lib/widget/stock_detail.dart +++ b/lib/widget/stock_detail.dart @@ -633,7 +633,7 @@ class _StockItemDisplayState extends RefreshableState { subtitle: Text("${widget.item.locationPathString}"), leading: FaIcon( FontAwesomeIcons.locationDot, - color: COLOR_CLICK, + color: COLOR_ACTION, ), onTap: () async { if (widget.item.locationId > 0) { @@ -666,7 +666,7 @@ class _StockItemDisplayState extends RefreshableState { ListTile( title: Text(L10().supplierPart), subtitle: Text(widget.item.supplierSKU), - leading: FaIcon(FontAwesomeIcons.building, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.building, color: COLOR_ACTION), trailing: InvenTreeAPI().getImage( widget.item.supplierImage, width: 40, @@ -748,7 +748,7 @@ class _StockItemDisplayState extends RefreshableState { tiles.add( ListTile( title: Text("${widget.item.link}"), - leading: FaIcon(FontAwesomeIcons.link, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.link, color: COLOR_ACTION), onTap: () { widget.item.openLink(); }, @@ -760,7 +760,7 @@ class _StockItemDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().testResults), - leading: FaIcon(FontAwesomeIcons.listCheck, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.listCheck, color: COLOR_ACTION), trailing: Text("${widget.item.testResultCount}"), onTap: () { Navigator.push( @@ -793,7 +793,7 @@ class _StockItemDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().history), - leading: FaIcon(FontAwesomeIcons.clockRotateLeft, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.clockRotateLeft, color: COLOR_ACTION), trailing: Text("${widget.item.trackingItemCount}"), onTap: () { Navigator.push( @@ -812,7 +812,7 @@ class _StockItemDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().notes), - leading: FaIcon(FontAwesomeIcons.noteSticky, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.noteSticky, color: COLOR_ACTION), onTap: () { Navigator.push( context, @@ -825,7 +825,7 @@ class _StockItemDisplayState extends RefreshableState { tiles.add( ListTile( title: Text(L10().attachments), - leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_CLICK), + leading: FaIcon(FontAwesomeIcons.fileLines, color: COLOR_ACTION), trailing: attachmentCount > 0 ? Text(attachmentCount.toString()) : null, onTap: () { Navigator.push( diff --git a/lib/widget/stock_item_test_results.dart b/lib/widget/stock_item_test_results.dart index 817e7c37..fc0ef4b5 100644 --- a/lib/widget/stock_item_test_results.dart +++ b/lib/widget/stock_item_test_results.dart @@ -158,7 +158,7 @@ class _StockItemTestResultDisplayState extends RefreshableState