mirror of
https://github.com/MaxiFan/TunnelX.git
synced 2026-05-17 21:14:37 +03:00
Fix help donation actions and remove internal docs
This commit is contained in:
@@ -29,6 +29,8 @@ create-ico.ps1
|
||||
|
||||
# Personal notes and exported documents
|
||||
*.docx
|
||||
docs/PRIVACY_REVIEW.md
|
||||
docs/PUBLISHING_CHECKLIST.md
|
||||
|
||||
# Logs and temporary files
|
||||
*.log
|
||||
|
||||
@@ -377,7 +377,8 @@ public partial class MainWindow : Window
|
||||
{
|
||||
var helpWindow = new AppTunnel.Views.HelpWindow
|
||||
{
|
||||
Owner = this
|
||||
Owner = this,
|
||||
DataContext = _viewModel
|
||||
};
|
||||
helpWindow.ShowDialog();
|
||||
}
|
||||
|
||||
@@ -9,9 +9,9 @@ public static class AppInfo
|
||||
public const string PayPalEmail = "gallafan@gmail.com";
|
||||
public const string PayPalDonateUrl = "https://www.paypal.com/donate/?business=gallafan%40gmail.com¤cy_code=USD";
|
||||
public const string CryptoDonationText =
|
||||
"TRON / USDT-TRC20: TNWV867fQDT6zpLunHgbeMjrN6ic63LQSu\n" +
|
||||
"Bitcoin: bc1qgx3g47c458fu6smnpqpu0l05hha82rq2xjet4y\n" +
|
||||
"Ethereum / USDT-ERC20: 0x72d94Bb250E8802441a0ED05686Ee925BC99Fef5\n" +
|
||||
"ترون / USDT روی TRC20: TNWV867fQDT6zpLunHgbeMjrN6ic63LQSu\n" +
|
||||
"بیتکوین: bc1qgx3g47c458fu6smnpqpu0l05hha82rq2xjet4y\n" +
|
||||
"اتریوم / USDT روی ERC20: 0x72d94Bb250E8802441a0ED05686Ee925BC99Fef5\n" +
|
||||
"TON: UQD65oL2Vu2OJDSrwQ0wLLSw3g668SREMJ3VPW9k8b6Sy-Yf\n" +
|
||||
"BNB Smart Chain: 0xE2a5b01cE2b3713D435Bc16d92eAdd88A82159f0\n" +
|
||||
"Dogecoin: DSZRNY65yF679uvjAh6sUAt6YiEEQHwKGb";
|
||||
|
||||
@@ -64,6 +64,7 @@ public partial class MainViewModel : INotifyPropertyChanged
|
||||
ClearConfigCommand = new RelayCommand(_ => SelectedV2RayConfig = "", _ => !IsConnected && CurrentTunnelType == TunnelType.V2Ray);
|
||||
OpenGitHubCommand = new RelayCommand(_ => OpenExternalLink(AppInfo.GitHubUrl));
|
||||
OpenDonateCommand = new RelayCommand(_ => OpenExternalLink(AppInfo.PayPalDonateUrl));
|
||||
CopyDonationInfoCommand = new RelayCommand(_ => CopyDonationInfoToClipboard());
|
||||
|
||||
_trafficRouter.TrafficUpdated += OnTrafficUpdated;
|
||||
|
||||
@@ -247,7 +248,7 @@ public partial class MainViewModel : INotifyPropertyChanged
|
||||
public string AppCreatorText => AppInfo.CreatorText;
|
||||
public string AppGitHubUrl => AppInfo.GitHubUrl;
|
||||
public string AppLicenseText => AppInfo.LicenseName;
|
||||
public string DonatePayPalText => $"PayPal: {AppInfo.PayPalEmail}";
|
||||
public string DonatePayPalText => $"پیپل: {AppInfo.PayPalEmail}";
|
||||
public string CryptoDonationText => AppInfo.CryptoDonationText;
|
||||
|
||||
public string ConnectButtonText => _connectionState switch
|
||||
@@ -617,6 +618,7 @@ public partial class MainViewModel : INotifyPropertyChanged
|
||||
public ICommand ClearConfigCommand { get; }
|
||||
public ICommand OpenGitHubCommand { get; }
|
||||
public ICommand OpenDonateCommand { get; }
|
||||
public ICommand CopyDonationInfoCommand { get; }
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -638,6 +640,24 @@ public partial class MainViewModel : INotifyPropertyChanged
|
||||
}
|
||||
}
|
||||
|
||||
private void CopyDonationInfoToClipboard()
|
||||
{
|
||||
try
|
||||
{
|
||||
var text =
|
||||
$"{AppInfo.AppName} - حمایت از پروژه\n" +
|
||||
$"PayPal: {AppInfo.PayPalEmail}\n" +
|
||||
$"PayPal link: {AppInfo.PayPalDonateUrl}\n\n" +
|
||||
AppInfo.CryptoDonationText;
|
||||
System.Windows.Clipboard.SetText(text);
|
||||
Logger.Info("[UI] Donation info copied to clipboard");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.Warning($"[UI] Copy donation info failed: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
private void PasteConfigFromClipboard()
|
||||
{
|
||||
try
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
Foreground="{StaticResource AccentBrush}"
|
||||
FlowDirection="LeftToRight"
|
||||
TextWrapping="Wrap"/>
|
||||
<TextBlock Text="{Binding AppLicenseText, StringFormat=License: {0}}"
|
||||
<TextBlock Text="{Binding AppLicenseText, StringFormat=لایسنس: {0}}"
|
||||
FontSize="10"
|
||||
Foreground="{StaticResource TextSecondaryBrush}"
|
||||
FlowDirection="LeftToRight"
|
||||
@@ -81,17 +81,23 @@
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="2"
|
||||
Orientation="Horizontal"
|
||||
VerticalAlignment="Center">
|
||||
Orientation="Vertical"
|
||||
VerticalAlignment="Center"
|
||||
MinWidth="150">
|
||||
<Button Style="{StaticResource SecondaryButton}"
|
||||
Content="GitHub"
|
||||
Content="باز کردن گیتهاب"
|
||||
Command="{Binding OpenGitHubCommand}"
|
||||
Padding="14,8"
|
||||
Margin="0,0,8,0"/>
|
||||
Padding="14,8"/>
|
||||
<Button Style="{StaticResource PrimaryButton}"
|
||||
Content="Donate"
|
||||
Content="حمایت با پیپل"
|
||||
Command="{Binding OpenDonateCommand}"
|
||||
Padding="16,8"/>
|
||||
Padding="16,8"
|
||||
Margin="0,8,0,0"/>
|
||||
<Button Style="{StaticResource SecondaryButton}"
|
||||
Content="کپی اطلاعات حمایت"
|
||||
Command="{Binding CopyDonationInfoCommand}"
|
||||
Padding="14,8"
|
||||
Margin="0,8,0,0"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
|
||||
## Unreleased
|
||||
|
||||
- Prepared open-source repository documentation and GitHub release checklist.
|
||||
- Prepared open-source repository documentation and release guidance.
|
||||
- Added in-app GitHub and donation links.
|
||||
- Added project metadata for MaxFan and GPL-3.0-or-later licensing.
|
||||
- Improved leak logging and traffic accounting in recent internal builds.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
TunnelX is a free and open-source Windows split-tunneling client built by **MaxFan**. It routes selected apps, selected destinations, or the whole system through supported tunnel cores while keeping local and excluded destinations on the normal network path.
|
||||
|
||||
> Status: pre-release. Review `docs/PUBLISHING_CHECKLIST.md` before publishing a public repository or release artifact.
|
||||
> Status: pre-release. Review the release notes in `docs/BUILD.md` before publishing a public artifact.
|
||||
|
||||
## Features
|
||||
|
||||
@@ -15,7 +15,7 @@ TunnelX is a free and open-source Windows split-tunneling client built by **MaxF
|
||||
|
||||
## Download
|
||||
|
||||
Public downloads should be attached to GitHub Releases after the checklist is complete:
|
||||
Public downloads should be attached to GitHub Releases after release validation is complete:
|
||||
|
||||
[GitHub project](https://github.com/MaxiFan/TunnelX)
|
||||
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@ TunnelX-v1.2.21-standalone-compressed.exe
|
||||
|
||||
## Before Publishing
|
||||
|
||||
- Run the leak test plan in `docs/PUBLISHING_CHECKLIST.md`.
|
||||
- Run leak, DNS, full-route, split-route, app toggle, and reconnect tests before attaching a public artifact.
|
||||
- Confirm third-party license notices are current.
|
||||
- Confirm the app version in `AppTunnel/AppTunnel.csproj`.
|
||||
- Attach release artifacts only to GitHub Releases; do not commit generated `publish/` or `Releases/` output.
|
||||
|
||||
Reference in New Issue
Block a user