This commit is contained in:
Matt Parker
2025-11-24 22:53:51 +10:00
parent 329cc057c4
commit 44d7ee524d

View File

@@ -29,39 +29,17 @@ public partial class RunningTasksDisplay : HBoxContainer
_activityMonitor.ActivityStarted.Unsubscribe(OnActivityStarted); _activityMonitor.ActivityStarted.Unsubscribe(OnActivityStarted);
} }
private async Task OnActivityStarted(Activity activity) private async Task OnActivityStarted(Activity activity) => await OnActivityChanged(activity, true);
private async Task OnActivityStopped(Activity activity) => await OnActivityChanged(activity, false);
private async Task OnActivityChanged(Activity activity, bool isOccurring)
{ {
if (activity.DisplayName == $"{nameof(RoslynAnalysis)}.{nameof(RoslynAnalysis.UpdateSolutionDiagnostics)}") if (activity.DisplayName == $"{nameof(RoslynAnalysis)}.{nameof(RoslynAnalysis.UpdateSolutionDiagnostics)}")
{ {
_isSolutionDiagnosticsBeingRetrieved = true; _isSolutionDiagnosticsBeingRetrieved = isOccurring;
} }
else if (activity.DisplayName == "OpenSolution") else if (activity.DisplayName == "OpenSolution")
{ {
_isSolutionLoading = true; _isSolutionLoading = isOccurring;
}
else
{
return;
}
var visible = _isSolutionDiagnosticsBeingRetrieved || _isSolutionLoading;
await this.InvokeAsync(() =>
{
_solutionLoadingLabel.Visible = _isSolutionLoading;
_solutionDiagnosticsLabel.Visible = _isSolutionDiagnosticsBeingRetrieved;
Visible = visible;
});
}
private async Task OnActivityStopped(Activity activity)
{
if (activity.DisplayName == $"{nameof(RoslynAnalysis)}.{nameof(RoslynAnalysis.UpdateSolutionDiagnostics)}")
{
_isSolutionDiagnosticsBeingRetrieved = false;
}
else if (activity.DisplayName == "OpenSolution")
{
_isSolutionLoading = false;
} }
else else
{ {