feat: clear log
This commit is contained in:
@@ -17,4 +17,9 @@ class EdgeLogger with ChangeNotifier {
|
|||||||
logList.add(log);
|
logList.add(log);
|
||||||
notifyListeners();
|
notifyListeners();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void clearLog() {
|
||||||
|
logList.clear();
|
||||||
|
notifyListeners();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -23,5 +23,6 @@
|
|||||||
"chooseLanguage": "Choose Language",
|
"chooseLanguage": "Choose Language",
|
||||||
"successfullyConnected": "Connected",
|
"successfullyConnected": "Connected",
|
||||||
"macOrIpAlreadyInUse": "MAC or IP address already in use or not released yet by supernode",
|
"macOrIpAlreadyInUse": "MAC or IP address already in use or not released yet by supernode",
|
||||||
"otherReasonFail": "Connect fail"
|
"otherReasonFail": "Connect fail",
|
||||||
|
"clearLog": "Clear log"
|
||||||
}
|
}
|
@@ -23,5 +23,6 @@
|
|||||||
"chooseLanguage": "选择语言",
|
"chooseLanguage": "选择语言",
|
||||||
"successfullyConnected": "已连接",
|
"successfullyConnected": "已连接",
|
||||||
"macOrIpAlreadyInUse": "MAC或IP地址已被占用或者未被中转服务器释放",
|
"macOrIpAlreadyInUse": "MAC或IP地址已被占用或者未被中转服务器释放",
|
||||||
"otherReasonFail": "连接失败"
|
"otherReasonFail": "连接失败",
|
||||||
|
"clearLog": "清除日志"
|
||||||
}
|
}
|
@@ -1,5 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:winui_n2n/edge_state.dart';
|
import 'package:winui_n2n/edge_state.dart';
|
||||||
|
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
||||||
|
|
||||||
class LoggerPage extends StatelessWidget {
|
class LoggerPage extends StatelessWidget {
|
||||||
const LoggerPage({super.key});
|
const LoggerPage({super.key});
|
||||||
@@ -9,12 +10,26 @@ class LoggerPage extends StatelessWidget {
|
|||||||
return ListenableBuilder(
|
return ListenableBuilder(
|
||||||
listenable: EdgeState.instance.logger,
|
listenable: EdgeState.instance.logger,
|
||||||
builder: (context, child) {
|
builder: (context, child) {
|
||||||
return ListView(
|
return Stack(
|
||||||
children: EdgeState.instance.logger.logList.map<SelectableText>(
|
children: [
|
||||||
(e) {
|
ListView(
|
||||||
return SelectableText(e);
|
children: EdgeState.instance.logger.logList.map<SelectableText>(
|
||||||
},
|
(e) {
|
||||||
).toList(),
|
return SelectableText(e);
|
||||||
|
},
|
||||||
|
).toList(),
|
||||||
|
),
|
||||||
|
Positioned(
|
||||||
|
right: 10,
|
||||||
|
bottom: 10,
|
||||||
|
child: FloatingActionButton(
|
||||||
|
tooltip: AppLocalizations.of(context)!.clearLog,
|
||||||
|
onPressed: () {
|
||||||
|
EdgeState.instance.logger.clearLog();
|
||||||
|
},
|
||||||
|
child: const Icon(Icons.clear),
|
||||||
|
)),
|
||||||
|
],
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
Reference in New Issue
Block a user