Skip to content

Commit 24b6153

Browse files
committed
ux: context menu of selected commits
* update English translation * re-order the menu items
1 parent 751991c commit 24b6153

File tree

2 files changed

+39
-36
lines changed

2 files changed

+39
-36
lines changed

src/Resources/Locales/en_US.axaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,24 +102,24 @@
102102
<x:String x:Key="Text.Clone.RemoteURL" xml:space="preserve">Repository URL:</x:String>
103103
<x:String x:Key="Text.Close" xml:space="preserve">CLOSE</x:String>
104104
<x:String x:Key="Text.CodeEditor" xml:space="preserve">Editor</x:String>
105-
<x:String x:Key="Text.CommitCM.CherryPick" xml:space="preserve">Cherry-Pick This Commit</x:String>
105+
<x:String x:Key="Text.CommitCM.CherryPick" xml:space="preserve">Cherry-Pick Commit</x:String>
106106
<x:String x:Key="Text.CommitCM.CherryPickMultiple" xml:space="preserve">Cherry-Pick ...</x:String>
107107
<x:String x:Key="Text.CommitCM.Checkout" xml:space="preserve">Checkout Commit</x:String>
108108
<x:String x:Key="Text.CommitCM.CompareWithHead" xml:space="preserve">Compare with HEAD</x:String>
109109
<x:String x:Key="Text.CommitCM.CompareWithWorktree" xml:space="preserve">Compare with Worktree</x:String>
110110
<x:String x:Key="Text.CommitCM.CopyInfo" xml:space="preserve">Copy Info</x:String>
111111
<x:String x:Key="Text.CommitCM.CopySHA" xml:space="preserve">Copy SHA</x:String>
112112
<x:String x:Key="Text.CommitCM.CustomAction" xml:space="preserve">Custom Action</x:String>
113-
<x:String x:Key="Text.CommitCM.InteractiveRebase" xml:space="preserve">Interactive Rebase ${0}$ to Here</x:String>
113+
<x:String x:Key="Text.CommitCM.InteractiveRebase" xml:space="preserve">Interactively Rebase ${0}$ on Here</x:String>
114114
<x:String x:Key="Text.CommitCM.Merge" xml:space="preserve">Merge to ${0}$</x:String>
115115
<x:String x:Key="Text.CommitCM.MergeMultiple" xml:space="preserve">Merge ...</x:String>
116-
<x:String x:Key="Text.CommitCM.Rebase" xml:space="preserve">Rebase ${0}$ to Here</x:String>
116+
<x:String x:Key="Text.CommitCM.Rebase" xml:space="preserve">Rebase ${0}$ on Here</x:String>
117117
<x:String x:Key="Text.CommitCM.Reset" xml:space="preserve">Reset ${0}$ to Here</x:String>
118118
<x:String x:Key="Text.CommitCM.Revert" xml:space="preserve">Revert Commit</x:String>
119119
<x:String x:Key="Text.CommitCM.Reword" xml:space="preserve">Reword</x:String>
120120
<x:String x:Key="Text.CommitCM.SaveAsPatch" xml:space="preserve">Save as Patch...</x:String>
121121
<x:String x:Key="Text.CommitCM.Squash" xml:space="preserve">Squash into Parent</x:String>
122-
<x:String x:Key="Text.CommitCM.SquashCommitsSinceThis" xml:space="preserve">Squash Child Commits to Here</x:String>
122+
<x:String x:Key="Text.CommitCM.SquashCommitsSinceThis" xml:space="preserve">Squash Children into Here</x:String>
123123
<x:String x:Key="Text.CommitDetail.Changes" xml:space="preserve">CHANGES</x:String>
124124
<x:String x:Key="Text.CommitDetail.Changes.Search" xml:space="preserve">Search Changes...</x:String>
125125
<x:String x:Key="Text.CommitDetail.Files" xml:space="preserve">FILES</x:String>

src/ViewModels/Histories.cs

Lines changed: 35 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -482,6 +482,21 @@ public ContextMenu MakeContextMenu(ListBox list)
482482
};
483483
menu.Items.Add(rebase);
484484

485+
if (!commit.HasDecorators)
486+
{
487+
var merge = new MenuItem();
488+
merge.Header = new Views.NameHighlightedTextBlock("CommitCM.Merge", current.Name);
489+
merge.Icon = App.CreateMenuIcon("Icons.Merge");
490+
merge.Click += (_, e) =>
491+
{
492+
if (PopupHost.CanCreatePopup())
493+
PopupHost.ShowPopup(new Merge(_repo, commit, current.Name));
494+
495+
e.Handled = true;
496+
};
497+
menu.Items.Add(merge);
498+
}
499+
485500
var cherryPick = new MenuItem();
486501
cherryPick.Header = App.Text("CommitCM.CherryPick");
487502
cherryPick.Icon = App.CreateMenuIcon("Icons.CherryPick");
@@ -513,21 +528,6 @@ public ContextMenu MakeContextMenu(ListBox list)
513528
e.Handled = true;
514529
};
515530
menu.Items.Add(cherryPick);
516-
517-
if (!commit.HasDecorators)
518-
{
519-
var merge = new MenuItem();
520-
merge.Header = new Views.NameHighlightedTextBlock("CommitCM.Merge", current.Name);
521-
merge.Icon = App.CreateMenuIcon("Icons.Merge");
522-
merge.Click += (_, e) =>
523-
{
524-
if (PopupHost.CanCreatePopup())
525-
PopupHost.ShowPopup(new Merge(_repo, commit, current.Name));
526-
527-
e.Handled = true;
528-
};
529-
menu.Items.Add(merge);
530-
}
531531
}
532532
else
533533
{
@@ -541,11 +541,29 @@ public ContextMenu MakeContextMenu(ListBox list)
541541
e.Handled = true;
542542
};
543543
menu.Items.Add(revert);
544+
}
544545

546+
if (current.Head != commit.SHA)
547+
{
548+
var checkoutCommit = new MenuItem();
549+
checkoutCommit.Header = App.Text("CommitCM.Checkout");
550+
checkoutCommit.Icon = App.CreateMenuIcon("Icons.Detached");
551+
checkoutCommit.Click += (_, e) =>
552+
{
553+
if (PopupHost.CanCreatePopup())
554+
PopupHost.ShowPopup(new CheckoutCommit(_repo, commit));
555+
e.Handled = true;
556+
};
557+
menu.Items.Add(checkoutCommit);
558+
}
559+
560+
menu.Items.Add(new MenuItem() { Header = "-" });
561+
562+
if (commit.IsMerged && current.Head != commit.SHA)
563+
{
545564
var interactiveRebase = new MenuItem();
546565
interactiveRebase.Header = new Views.NameHighlightedTextBlock("CommitCM.InteractiveRebase", current.Name);
547566
interactiveRebase.Icon = App.CreateMenuIcon("Icons.InteractiveRebase");
548-
interactiveRebase.IsVisible = current.Head != commit.SHA;
549567
interactiveRebase.Click += (_, e) =>
550568
{
551569
if (_repo.LocalChangesCount > 0)
@@ -562,24 +580,9 @@ public ContextMenu MakeContextMenu(ListBox list)
562580
e.Handled = true;
563581
};
564582
menu.Items.Add(interactiveRebase);
583+
menu.Items.Add(new MenuItem() { Header = "-" });
565584
}
566585

567-
if (current.Head != commit.SHA)
568-
{
569-
var checkoutCommit = new MenuItem();
570-
checkoutCommit.Header = App.Text("CommitCM.Checkout");
571-
checkoutCommit.Icon = App.CreateMenuIcon("Icons.Detached");
572-
checkoutCommit.Click += (_, e) =>
573-
{
574-
if (PopupHost.CanCreatePopup())
575-
PopupHost.ShowPopup(new CheckoutCommit(_repo, commit));
576-
e.Handled = true;
577-
};
578-
menu.Items.Add(checkoutCommit);
579-
}
580-
581-
menu.Items.Add(new MenuItem() { Header = "-" });
582-
583586
if (current.Head != commit.SHA)
584587
{
585588
var compareWithHead = new MenuItem();

0 commit comments

Comments
 (0)