private async void saveFileAsync(string filepath, bool useFilename = false)
        {
            vm.isWorking = true;
            string path = Path.GetDirectoryName(filepath);
            string name = useFilename ? Path.GetFileName(filepath) : null;

            try
            {
                string result = await service.downloadSubitleToPathAsync(vm.selectedSubtitle, path, name);

                if (!File.Exists(result))
                {
                    throw new Exception("Failed to save downloaded subtitle");
                }
                Process.Start("explorer.exe", $"/select, \"{result}\"");
            }
            catch
            {
                this.ShowMessageAsync("Error", "An error happened while saving subtitle, please try again.");
            }
            vm.isWorking = false;
        }