auto scroll on apt/yum upgrading.

This commit is contained in:
Junyuan Feng
2022-05-03 09:17:42 +08:00
parent a06ea82f2c
commit fd1b2fc7b0
5 changed files with 20 additions and 13 deletions

View File

@@ -11,12 +11,15 @@ class AptProvider extends BusyProvider {
List<UpgradePkgInfo>? upgradeable;
String? error;
String? updateLog;
Function()? onUpgrade;
AptProvider();
Future<void> init(SSHClient client, Distribution dist) async {
Future<void> init(
SSHClient client, Distribution dist, Function() onUpgrade) async {
this.client = client;
this.dist = dist;
this.onUpgrade = onUpgrade;
whoami = (await client.run('whoami').string).trim();
}
@@ -88,6 +91,7 @@ class AptProvider extends BusyProvider {
session.stdout.listen((data) {
updateLog = (updateLog ?? '') + data.string;
notifyListeners();
onUpgrade!();
});
refreshInstalled();
}

View File

@@ -139,6 +139,7 @@ class ServerProvider extends BusyProvider {
void delServer(ServerPrivateInfo info) {
final idx = _servers.indexWhere((s) => s.info == info);
if (idx == -1) return;
_servers[idx].client?.close();
_servers.removeAt(idx);
notifyListeners();