feature<Remote>: add 'Prune' context menu for remote to prune dead branches without fetching

This commit is contained in:
leo 2021-11-17 16:12:26 +08:00
parent 0379d7e331
commit 9f58e0c715
6 changed files with 65 additions and 10 deletions

View file

@ -745,21 +745,28 @@ namespace SourceGit.Views.Widgets {
private void FillRemoteContextMenu(ContextMenu menu, Models.Remote remote) {
var fetch = new MenuItem();
fetch.Header = App.Text("RemoteCM.Fetch", remote.Name);
fetch.Header = App.Text("RemoteCM.Fetch");
fetch.Click += (o, e) => {
new Popups.Fetch(repo, remote.Name).Show();
e.Handled = true;
};
var prune = new MenuItem();
prune.Header = App.Text("RemoteCM.Prune");
prune.Click += (o, e) => {
new Popups.Prune(repo.Path, remote.Name).ShowAndStart();
e.Handled = true;
};
var edit = new MenuItem();
edit.Header = App.Text("RemoteCM.Edit", remote.Name);
edit.Header = App.Text("RemoteCM.Edit");
edit.Click += (o, e) => {
new Popups.Remote(repo, remote).Show();
e.Handled = true;
};
var delete = new MenuItem();
delete.Header = App.Text("RemoteCM.Delete", remote.Name);
delete.Header = App.Text("RemoteCM.Delete");
delete.Click += (o, e) => {
new Popups.DeleteRemote(repo.Path, remote.Name).Show();
e.Handled = true;
@ -773,6 +780,7 @@ namespace SourceGit.Views.Widgets {
};
menu.Items.Add(fetch);
menu.Items.Add(prune);
menu.Items.Add(new Separator());
menu.Items.Add(edit);
menu.Items.Add(delete);