mirror of
https://github.com/BeyondDimension/SteamTools.git
synced 2026-10-19 07:01:35 +08:00
Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ceed57c0f2 | |||
| 8ca203f34b | |||
| d4de20aa96 | |||
| c94dec40a1 | |||
| b829114c4f | |||
| a3a32bf5fa | |||
| faa7cc5b13 | |||
| 1e506f9930 | |||
| 217449ba54 | |||
| 55b79c4d4e | |||
| a6c5fed203 | |||
| b7e31d1c9c |
@@ -21,7 +21,7 @@ public static partial class AssemblyInfo
|
||||
/// <summary>
|
||||
/// RC 版本号,范围 0~9,只增不减
|
||||
/// </summary>
|
||||
const string ver_for_rc = "9";
|
||||
const string ver_for_rc = "10";
|
||||
|
||||
public const string FileVersion = $"{Version2}.{ver_for_rc}1{ver_for_preview}.0";
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
</spp:AppItem>
|
||||
|
||||
<spp:AppItem
|
||||
Title="Wo Long: Fallen Dynasty (卧龙:苍天陨落)"
|
||||
Title="Wo Long: Fallen Dynasty (卧龙:苍天陨落)(卧龙:苍天陨落)(卧龙:苍天陨落)(卧龙:苍天陨落)"
|
||||
MaxHeight="120"
|
||||
Description="This is a description of whatver this does"
|
||||
Tags="111">
|
||||
@@ -181,7 +181,7 @@
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="0,5"
|
||||
Margin="0,5,12,5"
|
||||
VerticalAlignment="Top"
|
||||
Classes="CaptionTextBlockStyle"
|
||||
FontSize="12"
|
||||
|
||||
+6
@@ -63,6 +63,12 @@ sealed class DnsDohAnalysisService : GeneralHttpClientFactory
|
||||
var client = new HttpClient(handler);
|
||||
client.BaseAddress = dohAddresUri;
|
||||
var dnsClient = new DnsHttpClient(client);
|
||||
//暂未考虑释放问题 注意!
|
||||
//foreach (var dc in dnsClients.Values)
|
||||
//{
|
||||
// dc.Dispose();
|
||||
//}
|
||||
//dnsClients.Clear();
|
||||
dnsClients.TryAdd(dohAddresUri, dnsClient);
|
||||
return dnsClient;
|
||||
}
|
||||
|
||||
@@ -46,8 +46,10 @@ static class WinDivertInitHelper
|
||||
|
||||
void GetData()
|
||||
{
|
||||
if (data != default)
|
||||
if (data == default)
|
||||
{
|
||||
data = GetWinDivertBinRes();
|
||||
}
|
||||
}
|
||||
|
||||
if (libraryPath != null && libraryDirPath != null)
|
||||
|
||||
+7
-1
@@ -375,7 +375,13 @@ internal partial class NetworkTestService : INetworkTestService
|
||||
DnsQueryAnswerRecord.DnsRecordType dnsRecordType = DnsQueryAnswerRecord.DnsRecordType.A,
|
||||
CancellationToken cancellationToken = default)
|
||||
{
|
||||
using HttpClient client = new HttpClient();
|
||||
var handler = new HttpClientHandler
|
||||
{
|
||||
UseCookies = false,
|
||||
UseProxy = false,
|
||||
Proxy = HttpNoProxy.Instance,
|
||||
};
|
||||
using HttpClient client = new HttpClient(handler);
|
||||
|
||||
string queryUrl = $"{dohServer}?name={testDomain}&type={dnsRecordType}";
|
||||
|
||||
|
||||
@@ -770,6 +770,11 @@ public sealed partial class GameAcceleratorService
|
||||
|
||||
public async Task ShowXunYouWindow(bool showHide)
|
||||
{
|
||||
//if (UserService.Current.User?.WattOpenId != null)
|
||||
// await Ioc.Get<IAcceleratorService>().XY_StartEx2(
|
||||
// UserService.Current.User.WattOpenId,
|
||||
// UserService.Current.User.NickName, 0, 0, 0);
|
||||
|
||||
var result = await Ioc.Get<IAcceleratorService>().XY_ShowWinodw(showHide);
|
||||
}
|
||||
}
|
||||
@@ -95,14 +95,14 @@ public sealed partial class AcceleratorPageViewModel
|
||||
|
||||
DNSCheckCommand = ReactiveCommand.CreateFromTask(async () =>
|
||||
{
|
||||
var testDomain = DomainPendingTest == string.Empty ? "steamcommunity.com" : DomainPendingTest;
|
||||
var testDomain = DomainPendingTest == string.Empty ? "store.steampowered.com" : DomainPendingTest;
|
||||
try
|
||||
{
|
||||
long delayMs;
|
||||
IPAddress[] address;
|
||||
if (ProxySettings.UseDoh)
|
||||
{
|
||||
var configDoh = ProxySettings.CustomDohAddres.Value ?? string.Empty;
|
||||
var configDoh = ProxySettings.CustomDohAddres.Value ?? ProxySettingsWindowViewModel.DohAddress.FirstOrDefault() ?? string.Empty;
|
||||
(delayMs, address) = await networkTestService.TestDNSOverHttpsAsync(testDomain, configDoh);
|
||||
}
|
||||
else
|
||||
|
||||
+3
-2
@@ -1,4 +1,5 @@
|
||||
using Avalonia.Controls;
|
||||
using Avalonia.Controls.Primitives;
|
||||
using Avalonia.Media;
|
||||
using System.Reactive;
|
||||
|
||||
@@ -83,7 +84,7 @@ public class ProxyDomainViewModel : ReactiveObject
|
||||
<= DelayMiddle => Brushes.Green,
|
||||
> DelayMiddle => Brushes.Orange,
|
||||
},
|
||||
_ => (IBrush?)App.Instance.FindResource("TextFillColorPrimaryBrush"),
|
||||
_ => Brushes.Gray,
|
||||
})
|
||||
.ToPropertyEx(this, x => x.DelayColor);
|
||||
}
|
||||
@@ -104,7 +105,7 @@ public sealed partial class AcceleratorPageViewModel : TabItemViewModel
|
||||
[Reactive]
|
||||
public string SelectedSTUNAddress { get; set; }
|
||||
|
||||
public List<string> STUNAddress { get; } =
|
||||
public string[] STUNAddress { get; } =
|
||||
[
|
||||
"stun.syncthing.net",
|
||||
"stun.hot-chilli.net",
|
||||
|
||||
-5
@@ -49,11 +49,6 @@
|
||||
</ui:SettingsExpander.Footer>
|
||||
<ui:SettingsExpanderItem Theme="{StaticResource SettingsExpanderItem2}">
|
||||
<TreeView ItemsSource="{Binding EnableProxyDomainVMs}" SelectionMode="Single">
|
||||
<TreeView.ItemContainerTheme>
|
||||
<ControlTheme BasedOn="{StaticResource {x:Type TreeViewItem}}" TargetType="TreeViewItem">
|
||||
<Setter Property="IsExpanded" Value="True" />
|
||||
</ControlTheme>
|
||||
</TreeView.ItemContainerTheme>
|
||||
<TreeView.ItemTemplate>
|
||||
<TreeDataTemplate ItemsSource="{Binding Children}">
|
||||
<DockPanel Margin="8,0">
|
||||
|
||||
@@ -34,13 +34,11 @@
|
||||
<ui:SettingsExpander.Footer>
|
||||
<WrapPanel>
|
||||
<ui:FAComboBox
|
||||
x:Name="STUNServer"
|
||||
Margin="4"
|
||||
x:FieldModifier="public"
|
||||
IsEditable="False"
|
||||
IsEnabled="{Binding !IsNATChecking}"
|
||||
ItemsSource="{Binding STUNAddress}"
|
||||
SelectedItem="{Binding SelectedSTUNAddress}"
|
||||
SelectedItem="{Binding SelectedSTUNAddress, Mode=TwoWay}"
|
||||
ToolTip.Tip="STUN 服务器地址">
|
||||
<ui:FAComboBox.ItemTemplate>
|
||||
<DataTemplate DataType="sys:String">
|
||||
@@ -53,6 +51,7 @@
|
||||
Width="100"
|
||||
Margin="4"
|
||||
x:FieldModifier="public"
|
||||
Command="{Binding NATCheckCommand}"
|
||||
Content="检测"
|
||||
IsEnabled="True" />
|
||||
</WrapPanel>
|
||||
@@ -102,9 +101,9 @@
|
||||
HorizontalAlignment="Right"
|
||||
IsVisible="{Binding IsNATChecking}" />
|
||||
<SelectableTextBlock
|
||||
x:Name="LocalIPAddress"
|
||||
Foreground="Gray"
|
||||
IsVisible="{Binding !IsNATChecking}" />
|
||||
IsVisible="{Binding !IsNATChecking}"
|
||||
Text="{Binding LocalEndPoint}" />
|
||||
</Grid>
|
||||
</ui:SettingsExpanderItem.Footer>
|
||||
</ui:SettingsExpanderItem>
|
||||
@@ -174,16 +173,43 @@
|
||||
<Separator Margin="-64,0" Classes="Horizontal" />
|
||||
|
||||
<ui:SettingsExpanderItem Margin="-28,0,0,-4" Background="Transparent">
|
||||
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||
<TextBlock
|
||||
VerticalAlignment="Center"
|
||||
FontWeight="Bold"
|
||||
Text="相关链接" />
|
||||
<TextBlock
|
||||
VerticalAlignment="Center"
|
||||
FontWeight="Bold"
|
||||
Text="相关链接" />
|
||||
</ui:SettingsExpanderItem>
|
||||
|
||||
<ui:SettingsExpanderItem Margin="-28,-24,0,-4" Background="Transparent">
|
||||
<WrapPanel Orientation="Horizontal">
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="解决NAT错误"
|
||||
Content="XBOX 关于 NAT 文档"
|
||||
NavigateUri="https://support.xbox.com/zh-CN/help/hardware-network/connect-network/xbox-one-nat-error" />
|
||||
</StackPanel>
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="PlayStation 关于 NAT 文档"
|
||||
NavigateUri="https://manuals.playstation.net/document/ct/ps4/settings/nw_test.html" />
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="Nintendo Switch 关于 NAT 文档"
|
||||
NavigateUri="https://www.nintendoswitch.com.cn/support/faq/373.html" />
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="Bungie 关于 NAT 文档"
|
||||
NavigateUri="https://help.bungie.net/hc/zh-cn/articles/360049496751-%E9%AB%98%E7%BA%A7%E7%96%91%E9%9A%BE%E6%8E%92%E8%A7%A3-%E9%80%9A%E7%94%A8%E5%8D%B3%E6%8F%92%E5%8D%B3%E7%94%A8-%E7%AB%AF%E5%8F%A3%E8%BD%AC%E9%80%81%E4%B8%8E%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2%E7%B1%BB%E5%9E%8B" />
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="Activision 关于 NAT 文档"
|
||||
NavigateUri="https://support.activision.com/tw/zh/articles/port-forward-and-nat-faq" />
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="RockStar Games 关于 NAT 文档"
|
||||
NavigateUri="https://support.rockstargames.com/tw/articles/206210548/%E5%A6%82%E4%BD%95%E8%A7%A3%E6%B1%BA-GTA-%E7%B7%9A%E4%B8%8A%E6%A8%A1%E5%BC%8F%E4%B8%AD%E8%88%87%E5%9A%B4%E6%A0%BC-Strict-NAT-%E9%A1%9E%E5%9E%8B%E7%9B%B8%E9%97%9C%E7%9A%84%E9%8C%AF%E8%AA%A4" />
|
||||
<HyperlinkButton
|
||||
VerticalAlignment="Center"
|
||||
Content="迅游关于 NAT 文档"
|
||||
NavigateUri="https://cs.xunyou.com/html/282/15271.shtml" />
|
||||
</WrapPanel>
|
||||
</ui:SettingsExpanderItem>
|
||||
</StackPanel>
|
||||
</ui:SettingsExpander>
|
||||
@@ -204,8 +230,8 @@
|
||||
</ui:SettingsExpander.Header>
|
||||
<ui:SettingsExpander.Footer>
|
||||
<Button
|
||||
x:Name="DNSCheckButton"
|
||||
Width="100"
|
||||
Command="{Binding DNSCheckCommand}"
|
||||
Content="检测"
|
||||
IsEnabled="True" />
|
||||
</ui:SettingsExpander.Footer>
|
||||
@@ -225,9 +251,9 @@
|
||||
<TextBlock Text="待检测的域名" />
|
||||
<ui:SettingsExpanderItem.Footer>
|
||||
<TextBox
|
||||
x:Name="DomainTextBox"
|
||||
Width="200"
|
||||
Watermark="steamcommunity.com" />
|
||||
Text="{Binding DomainPendingTest, Mode=TwoWay}"
|
||||
Watermark="store.steampowered.com" />
|
||||
</ui:SettingsExpanderItem.Footer>
|
||||
</ui:SettingsExpanderItem>
|
||||
|
||||
@@ -235,9 +261,8 @@
|
||||
<TextBlock Text="{Binding Path=Res.Settings_Proxy_CustomDNS, Mode=OneWay, Source={x:Static s:ResourceService.Current}}" />
|
||||
<ui:SettingsExpanderItem.Footer>
|
||||
<ui:FAComboBox
|
||||
x:Name="dummy"
|
||||
Width="200"
|
||||
IsEditable="False"
|
||||
IsEditable="True"
|
||||
IsEnabled="{Binding Source={x:Static ms:ProxySettings.UseDoh}, Path=!Value}"
|
||||
ItemsSource="{Binding Source={x:Static spp:ProxySettingsWindowViewModel.ProxyDNSs}}"
|
||||
Text="{Binding Source={x:Static ms:ProxySettings.ProxyMasterDns}, Path=Value, Mode=TwoWay}" />
|
||||
@@ -256,7 +281,7 @@
|
||||
<ui:SettingsExpanderItem.Footer>
|
||||
<ui:FAComboBox
|
||||
Width="200"
|
||||
IsEditable="False"
|
||||
IsEditable="True"
|
||||
IsEnabled="{Binding Source={x:Static ms:ProxySettings.UseDoh}, Path=Value}"
|
||||
ItemsSource="{Binding Source={x:Static spp:ProxySettingsWindowViewModel.DohAddress}}"
|
||||
PlaceholderText="{Binding Source={x:Static s:IDnsAnalysisService.Dnspod_DohAddres}, Mode=OneWay}"
|
||||
|
||||
@@ -10,8 +10,5 @@ public partial class NetworkCheck : UserControl
|
||||
public NetworkCheck()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
this.dummy.SelectedItem = ProxySettings.ProxyMasterDns.Value;
|
||||
this.dummy.Text = ProxySettings.ProxyMasterDns.Value;
|
||||
}
|
||||
}
|
||||
@@ -671,6 +671,7 @@
|
||||
<!-- 网络检测 -->
|
||||
<spp:NetworkCheck x:Name="NetworkCheckControl" />
|
||||
|
||||
<TabItem Content="dummy_tab_for_transisit_animation" />
|
||||
</Carousel>
|
||||
|
||||
<!-- Side tab of paid game spped up -->
|
||||
|
||||
@@ -74,12 +74,6 @@ public partial class AcceleratorPage2 : PageBase<AcceleratorPageViewModel>
|
||||
AcceleratorTabs.SelectedIndex = 0;
|
||||
}
|
||||
|
||||
this.Bind(ViewModel, vm => vm.SelectedSTUNAddress, v => v.NetworkCheckControl.STUNServer.SelectedItem).DisposeWith(disposables);
|
||||
this.BindCommand(ViewModel, vm => vm.NATCheckCommand, v => v.NetworkCheckControl.NATCheckButton).DisposeWith(disposables);
|
||||
this.OneWayBind(ViewModel, vm => vm.LocalEndPoint, v => v.NetworkCheckControl.LocalIPAddress.Text).DisposeWith(disposables);
|
||||
this.BindCommand(ViewModel, vm => vm.DNSCheckCommand, v => v.NetworkCheckControl.DNSCheckButton).DisposeWith(disposables);
|
||||
this.Bind(ViewModel, vm => vm.DomainPendingTest, v => v.NetworkCheckControl.DomainTextBox.Text).DisposeWith(disposables);
|
||||
|
||||
NetworkCheckControl.PingOK.IsVisible = false;
|
||||
NetworkCheckControl.PingError.IsVisible = false;
|
||||
NetworkCheckControl.NATCheckButton.Click += (_, _) => NetworkCheckControl.PingError.IsVisible = NetworkCheckControl.PingOK.IsVisible = false;
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
<ui:SettingsExpanderItem.Footer>
|
||||
<ui:FAComboBox
|
||||
IsEditable="True"
|
||||
IsEnabled="{Binding Source={x:Static ms:ProxySettings.UseDoh}, Path=!Value}"
|
||||
ItemsSource="{Binding ProxyDNSs}"
|
||||
Text="{Binding Source={x:Static ms:ProxySettings.ProxyMasterDns}, Path=Value, Mode=TwoWay}" />
|
||||
</ui:SettingsExpanderItem.Footer>
|
||||
@@ -78,6 +79,7 @@
|
||||
<ui:SettingsExpanderItem.Footer>
|
||||
<ui:FAComboBox
|
||||
IsEditable="True"
|
||||
IsEnabled="{Binding Source={x:Static ms:ProxySettings.UseDoh}, Path=Value}"
|
||||
ItemsSource="{Binding DohAddress}"
|
||||
PlaceholderText="{Binding Source={x:Static s:IDnsAnalysisService.Dnspod_DohAddres}, Mode=OneWay}"
|
||||
Text="{Binding Source={x:Static ms:ProxySettings.CustomDohAddres}, Path=Value, Mode=TwoWay}" />
|
||||
|
||||
@@ -16,6 +16,11 @@
|
||||
Description="{Binding Description, Source={x:Static s:Plugin.Instance}, Mode=OneWay}"
|
||||
Subtitle="{Binding Author, Source={x:Static s:Plugin.Instance}, Mode=OneWay, Converter={StaticResource StringFormatConverter}, ConverterParameter=Plugin_Author}"
|
||||
mc:Ignorable="d">
|
||||
<spp:PageBase.Styles>
|
||||
<Style Selector="spp|AppItem /template/ TextBlock#HeaderText">
|
||||
<Setter Property="Grid.ColumnSpan" Value="0" />
|
||||
</Style>
|
||||
</spp:PageBase.Styles>
|
||||
<spp:PageBase.PreviewImage>
|
||||
<ui:ImageIconSource Source="avares://BD.WTTS.Client.Plugins.Accelerator/UI/Assets/script.ico" />
|
||||
</spp:PageBase.PreviewImage>
|
||||
|
||||
@@ -13,6 +13,11 @@
|
||||
x:DataType="spp:AuthenticatorItemModel"
|
||||
Classes.IsActive="{Binding IsSelected}"
|
||||
mc:Ignorable="d">
|
||||
<UserControl.Styles>
|
||||
<Style Selector="spp|AppItem /template/ TextBlock#HeaderText">
|
||||
<Setter Property="Grid.ColumnSpan" Value="0" />
|
||||
</Style>
|
||||
</UserControl.Styles>
|
||||
<spp:AppItem
|
||||
Title="{Binding AuthName}"
|
||||
Description="{Binding AuthData.Created, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
"%LocalAppData%\\Riot Games\\Riot Client\\Data\\Cookies": "Cookies",
|
||||
"%LocalAppData%\\Riot Games\\Riot Client\\Data\\Sessions": "Sessions",
|
||||
"%LocalAppData%\\Riot Games\\Riot Client\\Data\\RiotClientPrivateSettings.yaml": "RiotClientPrivateSettings.yaml",
|
||||
"%LocalAppData%\\Riot Games\\Riot Client\\Data\\RiotGamesPrivateSettings.yaml": "RiotGamesPrivateSettings.yaml",
|
||||
"%LocalAppData%\\Riot Games\\Riot Client\\Config\\RiotClientSettings.yaml": "RiotClientSettings.yaml",
|
||||
"%LocalAppData%\\Riot Games\\Riot Client\\WattToolkit.id": "WattToolkit.id"
|
||||
},
|
||||
@@ -177,8 +178,7 @@
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\webcache\\common\\Session Storage\\*.log": "ProgramData\\Session Storage\\",
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\webcache\\common\\Session Storage\\*.ldb": "ProgramData\\Session Storage\\",
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\webcache\\common\\Cookies": "ProgramData\\Cookies",
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\storage\\etags.db": "ProgramData\\storage\\etags.db",
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\storage\\galaxy-2.0.db*": "ProgramData\\storage\\",
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\storage\\*": "ProgramData\\storage\\",
|
||||
"%ProgramData%\\GOG.com\\Galaxy\\config.json": "ProgramData\\config.json"
|
||||
},
|
||||
"ProfilePicPath": "%ProgramData%\\GOG.com\\Galaxy\\webcache\\%UniqueId%\\user\\%LARGEST%.jpg",
|
||||
|
||||
@@ -93,8 +93,14 @@ public sealed partial class GameAccountPageViewModel
|
||||
{
|
||||
GamePlatforms?[0].LoadUsers();
|
||||
|
||||
if (!OperatingSystem2.IsWindows())
|
||||
{
|
||||
AddGamePlatforms = [];
|
||||
return;
|
||||
}
|
||||
|
||||
var temp = GetSupportPlatforms();
|
||||
if (temp != null && OperatingSystem2.IsWindows())
|
||||
if (temp != null)
|
||||
{
|
||||
if (GameAccountSettings.EnablePlatforms.Any_Nullable())
|
||||
{
|
||||
|
||||
@@ -204,7 +204,7 @@
|
||||
</DataTemplate>
|
||||
</MenuItem.DataTemplates>-->
|
||||
</MenuItem>
|
||||
<MenuItem Header="-" />
|
||||
<MenuItem Header="-" IsVisible="{Binding !!AddGamePlatforms.Count}" />
|
||||
<MenuItem Command="{Binding LoginNewCommand}" Header="{Binding Path=Res.UserChange_LoginNewAccount, Mode=OneWay, Source={x:Static s:ResourceService.Current}}">
|
||||
<MenuItem.Icon>
|
||||
<ui:SymbolIcon Symbol="Add" />
|
||||
|
||||
Reference in New Issue
Block a user