refactor: remove unnecessary sort by name (descending) for tags (#1393)

Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
leo 2025-06-06 10:45:18 +08:00
parent ac55bed812
commit 3bb20868fc
No known key found for this signature in database
13 changed files with 20 additions and 45 deletions

View file

@ -5,8 +5,7 @@ namespace SourceGit.Models
public enum TagSortMode
{
CreatorDate = 0,
NameInAscending,
NameInDescending,
Name,
}
public class Tag : ObservableObject

View file

@ -624,8 +624,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">TAGS</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">NEUER TAG</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">Nach Erstellungsdatum</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">Nach Namen (Aufsteigend)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">Nach Namen (Absteigend)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">Nach Namen</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Sortiere</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Öffne im Terminal</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Verwende relative Zeitangaben in Verlauf</x:String>

View file

@ -638,8 +638,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">TAGS</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">New Tag</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">By Creator Date</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">By Name (Ascending)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">By Name (Descending)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">By Name</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Sort</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Open in Terminal</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Use relative time in histories</x:String>

View file

@ -641,8 +641,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">ETIQUETAS</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">NUEVA ETIQUETA</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">Por Fecha de Creación</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">Por Nombre (Ascendiente)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">Por Nombre (Descendiente)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">Por Nombre</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Ordenar</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Abrir en Terminal</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Usar tiempo relativo en las historias</x:String>

View file

@ -602,8 +602,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">TAGS</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">NOUVEAU TAG</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">Par date de créateur</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">Par nom (Croissant)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">Par nom (Décroissant)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">Par nom</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Trier</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Ouvrir dans un terminal</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Utiliser le temps relatif dans les historiques</x:String>

View file

@ -628,8 +628,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">TAG</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">NUOVO TAG</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">Per data di creazione</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">Per nome (ascendente)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">Per nome (discendente)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">Per nome</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Ordina</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Apri nel Terminale</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Usa tempo relativo nello storico</x:String>

View file

@ -600,7 +600,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">タグ</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">新しいタグを作成</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">作成者日時</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">名前 (昇順)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">名前</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">ソート</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">ターミナルで開く</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">履歴に相対時間を使用</x:String>

View file

@ -639,8 +639,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">МЕТКИ</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">НОВАЯ МЕТКА</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">По дате создания</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">По имени (по возрастанию)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">По имени (по убыванию)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">По имени</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Сортировать</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Открыть в терминале</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Использовать относительное время в историях</x:String>

View file

@ -601,8 +601,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">குறிசொற்கள்</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">புதிய குறிசொல்</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">படைப்பாளர் தேதியின்படி</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">பெயர் (ஏறுவரிசை) மூலம்</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">பெயர் (இறகுவரிசை) மூலம்</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">பெயர் மூலம்</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">வரிசைப்படுத்து</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">முனையத்தில் திற</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">வரலாறுகளில் உறவு நேரத்தைப் பயன்படுத்து</x:String>

View file

@ -606,8 +606,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">ТЕГИ</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">НОВИЙ ТЕГ</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">За датою створення</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">За назвою (за зростанням)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">За назвою (за спаданням)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">За назвою</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">Сортувати</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">Відкрити в терміналі</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">Використовувати відносний час в історії</x:String>

View file

@ -642,8 +642,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">标签列表</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">新建标签</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">按创建时间</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">按名称(升序)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">按名称(降序)</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">按名称</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">排序</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">在终端中打开</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">在提交列表中使用相对时间</x:String>

View file

@ -642,8 +642,7 @@
<x:String x:Key="Text.Repository.Tags" xml:space="preserve">標籤列表</x:String>
<x:String x:Key="Text.Repository.Tags.Add" xml:space="preserve">新增標籤</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByCreatorDate" xml:space="preserve">依建立時間</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameAsc" xml:space="preserve">依名稱升序</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByNameDes" xml:space="preserve">依名稱降序</x:String>
<x:String x:Key="Text.Repository.Tags.OrderByName" xml:space="preserve">依名稱</x:String>
<x:String x:Key="Text.Repository.Tags.Sort" xml:space="preserve">排序</x:String>
<x:String x:Key="Text.Repository.Terminal" xml:space="preserve">在終端機中開啟</x:String>
<x:String x:Key="Text.Repository.UseRelativeTimeInHistories" xml:space="preserve">在提交列表中使用相對時間</x:String>

View file

@ -2442,30 +2442,19 @@ namespace SourceGit.ViewModels
ev.Handled = true;
};
var byNameAsc = new MenuItem();
byNameAsc.Header = App.Text("Repository.Tags.OrderByNameAsc");
if (mode == Models.TagSortMode.NameInAscending)
byNameAsc.Icon = App.CreateMenuIcon("Icons.Check");
byNameAsc.Click += (_, ev) =>
var byName = new MenuItem();
byName.Header = App.Text("Repository.Tags.OrderByName");
if (mode == Models.TagSortMode.Name)
byName.Icon = App.CreateMenuIcon("Icons.Check");
byName.Click += (_, ev) =>
{
changeMode(Models.TagSortMode.NameInAscending);
ev.Handled = true;
};
var byNameDes = new MenuItem();
byNameDes.Header = App.Text("Repository.Tags.OrderByNameDes");
if (mode == Models.TagSortMode.NameInDescending)
byNameDes.Icon = App.CreateMenuIcon("Icons.Check");
byNameDes.Click += (_, ev) =>
{
changeMode(Models.TagSortMode.NameInDescending);
changeMode(Models.TagSortMode.Name);
ev.Handled = true;
};
var menu = new ContextMenu();
menu.Items.Add(byCreatorDate);
menu.Items.Add(byNameAsc);
menu.Items.Add(byNameDes);
menu.Items.Add(byName);
return menu;
}
@ -2638,11 +2627,8 @@ namespace SourceGit.ViewModels
case Models.TagSortMode.CreatorDate:
_tags.Sort((l, r) => r.CreatorDate.CompareTo(l.CreatorDate));
break;
case Models.TagSortMode.NameInAscending:
_tags.Sort((l, r) => Models.NumericSort.Compare(l.Name, r.Name));
break;
default:
_tags.Sort((l, r) => Models.NumericSort.Compare(r.Name, l.Name));
_tags.Sort((l, r) => Models.NumericSort.Compare(l.Name, r.Name));
break;
}