Isolate SSHKeyPair process to avoid run stuck

This commit is contained in:
Junyuan Feng
2022-01-10 12:10:56 +08:00
parent 516cec5565
commit 692f3bcdbc
7 changed files with 39 additions and 31 deletions

View File

@@ -35,8 +35,8 @@ class _ServerDetailPageState extends State<ServerDetailPage>
@override
Widget build(BuildContext context) {
return Consumer<ServerProvider>(builder: (_, provider, __) {
return _buildMainPage(
provider.servers.firstWhere((e) => '${e.info.ip}:${e.info.port}' == widget.id));
return _buildMainPage(provider.servers
.firstWhere((e) => '${e.info.ip}:${e.info.port}' == widget.id));
});
}
@@ -44,16 +44,6 @@ class _ServerDetailPageState extends State<ServerDetailPage>
return Scaffold(
appBar: AppBar(
title: Text(si.info.name),
actions: [
IconButton(
onPressed: () => AppRoute(
ServerEditPage(
spi: si.info,
),
'Edit server info page')
.go(context),
icon: const Icon(Icons.edit))
],
),
body: ListView(
padding: const EdgeInsets.all(17),

View File

@@ -115,8 +115,10 @@ class _ServerPageState extends State<ServerPage>
.go(context),
child: Padding(
padding: const EdgeInsets.all(13),
child:
_buildRealServerCard(si.status, si.info.name, si.connectionState),
child: SizedBox(
height: _media.size.height * 0.147,
child: _buildRealServerCard(
si.status, si.info.name, si.connectionState)),
),
onTap: () => AppRoute(ServerDetailPage('${si.info.ip}:${si.info.port}'),
'server detail page')
@@ -239,7 +241,7 @@ class _ServerPageState extends State<ServerPage>
Widget _buildPercentCircle(double percent, String title) {
if (percent <= 0) percent = 0.01;
if (percent >= 100) percent = 99.9;
var size = _media.size.height * 0.147;
var size = _media.size.height * 0.15;
return SizedBox(
width: _media.size.width * 0.2,
height: _media.size.height * 0.1,
@@ -285,6 +287,7 @@ class _ServerPageState extends State<ServerPage>
Future<void> afterFirstLayout(BuildContext context) async {
await GetIt.I.allReady();
await _serverProvider.loadLocalData();
_serverProvider.refreshData();
_serverProvider.startAutoRefresh();
}
}