detail page display memory exact value

This commit is contained in:
Junyuan Feng
2021-12-31 18:51:33 +08:00
parent f480c49f1f
commit 7fb8c88ab8
2 changed files with 17 additions and 5 deletions

View File

@@ -184,6 +184,16 @@ class _ServerDetailPageState extends State<ServerDetailPage>
));
}
String convertMB(int mb) {
const suffix = ['MB', 'GB', 'TB'];
double value = mb.toDouble();
int squareTimes = 0;
for (; value / 1024 > 1 && squareTimes < 3; squareTimes++) {
value /= 1024;
}
return '${value.toStringAsFixed(1)} ${suffix[squareTimes]}';
}
Widget _buildMemView(ServerStatus ss) {
final pColor = primaryColor;
final used = ss.memory.used / ss.memory.total;
@@ -197,9 +207,11 @@ class _ServerDetailPageState extends State<ServerDetailPage>
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
_buildMemExplain('Used', pColor),
_buildMemExplain('Cache', pColor.withAlpha(77)),
_buildMemExplain('Avail', progressColor.resolve(context))
_buildMemExplain(convertMB(ss.memory.used), pColor),
_buildMemExplain(
convertMB(ss.memory.cache), pColor.withAlpha(77)),
_buildMemExplain(
convertMB(ss.memory.total - ss.memory.avail), progressColor.resolve(context))
],
),
const SizedBox(

View File

@@ -67,9 +67,9 @@ class _ServerPageState extends State<ServerPage>
child: AnimationLimiter(
child: Column(
children: AnimationConfiguration.toStaggeredList(
duration: const Duration(milliseconds: 377),
duration: const Duration(milliseconds: 777),
childAnimationBuilder: (widget) => SlideAnimation(
verticalOffset: 50.0,
verticalOffset: 77.0,
child: FadeInAnimation(
child: widget,
),