Fix export rule order issue

https://github.com/2dust/v2rayN/issues/6377
pull/6443/head
2dust 2024-12-31 14:15:09 +08:00
parent ff642fd1ac
commit 37cba5ee34
6 changed files with 17 additions and 37 deletions

View File

@ -1248,15 +1248,6 @@ namespace ServiceLib.Resx {
}
}
/// <summary>
/// 查找类似 Russia 的本地化字符串。
/// </summary>
public static string menuRegionalPresetsRussia {
get {
return ResourceManager.GetString("menuRegionalPresetsRussia", resourceCulture);
}
}
/// <summary>
/// 查找类似 Iran 的本地化字符串。
/// </summary>
@ -1266,6 +1257,15 @@ namespace ServiceLib.Resx {
}
}
/// <summary>
/// 查找类似 Russia 的本地化字符串。
/// </summary>
public static string menuRegionalPresetsRussia {
get {
return ResourceManager.GetString("menuRegionalPresetsRussia", resourceCulture);
}
}
/// <summary>
/// 查找类似 Reload 的本地化字符串。
/// </summary>

View File

@ -177,12 +177,12 @@ namespace ServiceLib.ViewModels
}
var lst = new List<RulesItem>();
foreach (var it in SelectedSources ?? [SelectedSource])
var sources = SelectedSources ?? [SelectedSource];
foreach (var it in _rules)
{
var item = _rules.FirstOrDefault(t => t.Id == it?.Id);
if (item != null)
if (sources.Any(t => t.Id == it?.Id))
{
var item2 = JsonUtils.DeepCopy(item); //JsonUtils.Deserialize<RulesItem4Ray>(JsonUtils.Serialize(item));
var item2 = JsonUtils.DeepCopy(it);
item2.Id = null;
lst.Add(item2 ?? new());
}

View File

@ -187,12 +187,7 @@ namespace v2rayN.Desktop.Views
private void lstProfiles_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
List<ProfileItemModel> lst = [];
foreach (var item in lstProfiles.SelectedItems)
{
lst.Add((ProfileItemModel)item);
}
ViewModel.SelectedProfiles = lst;
ViewModel.SelectedProfiles = lstProfiles.SelectedItems.Cast<ProfileItemModel>().ToList();
}
private void LstProfiles_DoubleTapped(object? sender, Avalonia.Input.TappedEventArgs e)

View File

@ -166,12 +166,7 @@ namespace v2rayN.Desktop.Views
private void lstRules_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
List<RulesItemModel> lst = [];
foreach (var item in lstRules.SelectedItems)
{
lst.Add((RulesItemModel)item);
}
ViewModel.SelectedSources = lst;
ViewModel.SelectedSources = lstRules.SelectedItems.Cast<RulesItemModel>().ToList();
}
private void LstRules_DoubleTapped(object? sender, Avalonia.Input.TappedEventArgs e)

View File

@ -107,12 +107,7 @@ namespace v2rayN.Desktop.Views
private void lstRoutings_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
List<RoutingItemModel> lst = [];
foreach (var item in lstRoutings.SelectedItems)
{
lst.Add((RoutingItemModel)item);
}
ViewModel.SelectedSources = lst;
ViewModel.SelectedSources = lstRoutings.SelectedItems.Cast<RoutingItemModel>().ToList();
}
private void LstRoutings_DoubleTapped(object? sender, TappedEventArgs e)

View File

@ -82,12 +82,7 @@ namespace v2rayN.Desktop.Views
private void LstSubscription_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
List<SubItem> lst = [];
foreach (var item in lstSubscription.SelectedItems)
{
lst.Add((SubItem)item);
}
ViewModel.SelectedSources = lst;
ViewModel.SelectedSources = lstSubscription.SelectedItems.Cast<SubItem>().ToList();
}
private void menuClose_Click(object? sender, RoutedEventArgs e)