sourcegit/src/SourceGit/ViewModels/DeleteRemote.cs

39 lines
999 B
C#
Raw Normal View History

using System.Threading.Tasks;
namespace SourceGit.ViewModels
{
public class DeleteRemote : Popup
{
public Models.Remote Remote
{
get;
private set;
}
public DeleteRemote(Repository repo, Models.Remote remote)
{
_repo = repo;
Remote = remote;
View = new Views.DeleteRemote() { DataContext = this };
}
public override Task<bool> Sure()
{
_repo.SetWatcherEnabled(false);
ProgressDescription = "Deleting remote ...";
return Task.Run(() =>
{
var succ = new Commands.Remote(_repo.FullPath).Delete(Remote.Name);
CallUIThread(() =>
{
_repo.MarkBranchesDirtyManually();
_repo.SetWatcherEnabled(true);
});
return succ;
});
}
private readonly Repository _repo = null;
}
}