async void StopRecording()
{
Status = "Stopped";
var savingRecentItem = RecentViewModel.AddTemp(_currentFileName);
RecorderState = RecorderState.NotRecording;
CanChangeVideoSource = true;
if (Settings.MinimizeOnStart)
{
WindowState = WindowState.Normal;
}
_timer.Stop();
var rec = _recorder;
_recorder = null;
await Task.Run(() => rec.Dispose());
// After Save
RecentViewModel.RecentList.Remove(savingRecentItem);
RecentViewModel.Add(_currentFileName, isVideo ? RecentItemType.Video : RecentItemType.Audio);
SystemTrayManager.ShowNotification($"{(isVideo ? "Video" : "Audio")} Saved", Path.GetFileName(_currentFileName), 3000, () => Process.Start(_currentFileName));
}