fix: ToolsLogAnalyze

This commit is contained in:
xkeyC 2025-12-10 17:21:28 +08:00
parent da0bf8f4e7
commit c172b623d7

View File

@ -40,11 +40,7 @@ class ToolsLogAnalyze extends _$ToolsLogAnalyze {
final result = await GameLogAnalyzer.analyzeLogFile(logFile);
final (results, _) = result;
//
for (final data in results) {
_appendResult(data);
await Future.delayed(Duration.zero); // UI
}
_setResult(results);
_startListenFile(logFile);
}
@ -64,13 +60,6 @@ class ToolsLogAnalyze extends _$ToolsLogAnalyze {
debugPrint("[ToolsLogAnalyze] logFile change: ${change.type}");
switch (change.type) {
case ChangeType.MODIFY:
//
final newList = state.value?.where((e) => e.type != "statistics").toList();
if (listSortReverse) {
state = AsyncData(newList?.reversed.toList() ?? []);
} else {
state = AsyncData(newList ?? []);
}
return _launchLogAnalyze(logFile);
case ChangeType.ADD:
case ChangeType.REMOVE:
@ -83,18 +72,11 @@ class ToolsLogAnalyze extends _$ToolsLogAnalyze {
});
}
void _appendResult(LogAnalyzeLineData data) {
// state
final currentState = state.value;
if (currentState != null) {
if (listSortReverse) {
//
state = AsyncData([data, ...currentState]);
} else {
state = AsyncData([...currentState, data]);
}
void _setResult(List<LogAnalyzeLineData> data) {
if (listSortReverse) {
state = AsyncData(data.reversed.toList());
} else {
state = AsyncData([data]);
state = AsyncData(data);
}
}
}