diff --git a/lib/data/model/app/server_detail_card.dart b/lib/data/model/app/server_detail_card.dart index 0f34a7a8..5cba92fe 100644 --- a/lib/data/model/app/server_detail_card.dart +++ b/lib/data/model/app/server_detail_card.dart @@ -1,3 +1,5 @@ +import 'package:flutter/material.dart'; +import 'package:icons_plus/icons_plus.dart'; import 'package:toolbox/core/extension/context/locale.dart'; import 'package:toolbox/core/extension/listx.dart'; import 'package:toolbox/data/model/app/version_related.dart'; @@ -65,4 +67,19 @@ enum ServerDetailCards implements VersionRelated { } } } + + IconData get icon => switch (this) { + about => Icons.info, + cpu => Icons.memory, + mem => Bootstrap.memory, + swap => Icons.swap_horiz, + gpu => Bootstrap.gpu_card, + disk => Icons.storage, + net => ZondIcons.network, + sensor => MingCute.dashboard_4_line, + temp => FontAwesome.temperature_empty_solid, + battery => Icons.battery_full, + pve => BoxIcons.bxs_dashboard, + custom => Icons.code, + }; } diff --git a/lib/view/page/server/detail/view.dart b/lib/view/page/server/detail/view.dart index 01b1ec79..26778850 100644 --- a/lib/view/page/server/detail/view.dart +++ b/lib/view/page/server/detail/view.dart @@ -247,7 +247,7 @@ class _ServerDetailPageState extends State final idx = i * kMaxColumn + j + 1; if (idx >= cs.coresCount) break; if (Stores.setting.displayCpuIndex.fetch()) { - rowChildren.add(Text('${idx + 1}', style: UIs.text13Grey)); + rowChildren.add(Text('$idx', style: UIs.text13Grey)); } rowChildren.add( Expanded( diff --git a/lib/view/page/setting/seq/srv_detail_seq.dart b/lib/view/page/setting/seq/srv_detail_seq.dart index 3e464f59..72f82e7b 100644 --- a/lib/view/page/setting/seq/srv_detail_seq.dart +++ b/lib/view/page/setting/seq/srv_detail_seq.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; import 'package:toolbox/core/extension/context/locale.dart'; import 'package:toolbox/core/extension/context/snackbar.dart'; -import 'package:toolbox/core/utils/platform/base.dart'; import 'package:toolbox/data/model/app/server_detail_card.dart'; import 'package:toolbox/data/res/store.dart'; @@ -38,14 +37,16 @@ class _ServerDetailOrderPageState extends State { final allKeys = [...keys, ...disabled]; return ReorderableListView.builder( padding: const EdgeInsets.all(7), + buildDefaultDragHandles: false, itemBuilder: (_, idx) { final key = allKeys[idx]; return CardX( key: ValueKey(idx), child: ListTile( + contentPadding: const EdgeInsets.only(left: 23, right: 11), + leading: Icon(ServerDetailCards.fromName(key)?.icon), title: Text(key), - leading: _buildCheckBox(keys, key, idx, idx < keys.length), - trailing: isDesktop ? null : const Icon(Icons.drag_handle), + trailing: _buildCheckBox(keys, key, idx, idx < keys.length), ), ); }, diff --git a/lib/view/widget/choice_chip.dart b/lib/view/widget/choice_chip.dart index 58324ad5..bb93c3c9 100644 --- a/lib/view/widget/choice_chip.dart +++ b/lib/view/widget/choice_chip.dart @@ -16,10 +16,13 @@ class ChoiceChipX extends StatelessWidget { @override Widget build(BuildContext context) { return Padding( - padding: const EdgeInsets.symmetric(vertical: 3, horizontal: 3), + padding: const EdgeInsets.symmetric(horizontal: 5), child: ChoiceChip( label: Text(label), side: BorderSide.none, + showCheckmark: true, + padding: const EdgeInsets.symmetric(horizontal: 9, vertical: 8), + labelPadding: const EdgeInsets.symmetric(horizontal: 10, vertical: 0), selected: state.selected(value), onSelected: state.onSelected(value), ),