mirror of
https://github.com/MaxiFan/TunnelX.git
synced 2026-05-17 21:14:37 +03:00
288 lines
17 KiB
XML
288 lines
17 KiB
XML
<UserControl x:Class="AppTunnel.Views.HelpTabView"
|
||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||
xmlns:services="clr-namespace:AppTunnel.Services">
|
||
|
||
<ScrollViewer VerticalScrollBarVisibility="Auto"
|
||
HorizontalScrollBarVisibility="Disabled"
|
||
Padding="0,14,0,12">
|
||
<StackPanel Margin="16,0">
|
||
|
||
<!-- Overview -->
|
||
<Border Style="{StaticResource CardPanel}">
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="*"/>
|
||
<ColumnDefinition Width="Auto"/>
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<StackPanel Grid.Column="0">
|
||
<TextBlock Text="TunnelX"
|
||
FontSize="22"
|
||
FontWeight="Bold"
|
||
Foreground="{StaticResource TextPrimaryBrush}"/>
|
||
<TextBlock Text="Split tunneling برای برنامهها، مقصدها و حالت کل سیستم"
|
||
FontSize="11"
|
||
Foreground="{StaticResource TextSecondaryBrush}"
|
||
Margin="0,4,0,0"/>
|
||
</StackPanel>
|
||
|
||
<Border Grid.Column="1"
|
||
Background="#1AE8803A"
|
||
CornerRadius="8"
|
||
Padding="10,5"
|
||
VerticalAlignment="Center">
|
||
<TextBlock Text="{x:Static services:AppInfo.VersionText}"
|
||
FontSize="12"
|
||
FontWeight="SemiBold"
|
||
Foreground="{StaticResource AccentBrush}"
|
||
FlowDirection="LeftToRight"/>
|
||
</Border>
|
||
</Grid>
|
||
</Border>
|
||
|
||
<!-- Project + Support -->
|
||
<Border Style="{StaticResource CardPanel}">
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="*"/>
|
||
<ColumnDefinition Width="12"/>
|
||
<ColumnDefinition Width="Auto"/>
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<StackPanel Grid.Column="0">
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="پروژه آزاد و حمایت"/>
|
||
<TextBlock Text="{Binding AppCreatorText}"
|
||
FontSize="11"
|
||
Foreground="{StaticResource TextPrimaryBrush}"
|
||
Margin="0,0,0,4"/>
|
||
<TextBlock Text="{Binding AppGitHubUrl}"
|
||
FontSize="10"
|
||
Foreground="{StaticResource AccentBrush}"
|
||
FlowDirection="LeftToRight"
|
||
TextWrapping="Wrap"/>
|
||
<TextBlock Text="{Binding AppLicenseText, StringFormat=لایسنس: {0}}"
|
||
FontSize="10"
|
||
Foreground="{StaticResource TextSecondaryBrush}"
|
||
FlowDirection="LeftToRight"
|
||
Margin="0,5,0,0"/>
|
||
<TextBlock Text="{Binding DonatePayPalText}"
|
||
FontSize="10"
|
||
Foreground="{StaticResource TextSecondaryBrush}"
|
||
FlowDirection="LeftToRight"
|
||
Margin="0,5,0,0"/>
|
||
<TextBlock Text="{Binding CryptoDonationText}"
|
||
FontSize="10"
|
||
Foreground="{StaticResource TextSecondaryBrush}"
|
||
FontFamily="Consolas"
|
||
FlowDirection="LeftToRight"
|
||
TextWrapping="Wrap"
|
||
Margin="0,5,0,0"/>
|
||
</StackPanel>
|
||
|
||
<StackPanel Grid.Column="2"
|
||
Orientation="Vertical"
|
||
VerticalAlignment="Center"
|
||
MinWidth="150">
|
||
<Button Style="{StaticResource SecondaryButton}"
|
||
Content="باز کردن گیتهاب"
|
||
Command="{Binding OpenGitHubCommand}"
|
||
Padding="14,8"/>
|
||
<Button Style="{StaticResource PrimaryButton}"
|
||
Content="حمایت با پیپل"
|
||
Command="{Binding OpenDonateCommand}"
|
||
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>
|
||
|
||
<!-- Quick Path -->
|
||
<Border Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="شروع سریع"/>
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="*"/>
|
||
<ColumnDefinition Width="8"/>
|
||
<ColumnDefinition Width="*"/>
|
||
</Grid.ColumnDefinitions>
|
||
<Grid.RowDefinitions>
|
||
<RowDefinition Height="Auto"/>
|
||
<RowDefinition Height="8"/>
|
||
<RowDefinition Height="Auto"/>
|
||
</Grid.RowDefinitions>
|
||
|
||
<Border Grid.Row="0" Grid.Column="0" Background="#11FFFFFF" CornerRadius="8" Padding="12,10">
|
||
<StackPanel>
|
||
<TextBlock Text="۱. پروفایل" FontSize="12" FontWeight="SemiBold"
|
||
Foreground="{StaticResource TextPrimaryBrush}"/>
|
||
<TextBlock Text="نوع اتصال را انتخاب کنید و کانفیگ L2TP یا V2Ray/Xray را وارد کنید."
|
||
FontSize="10" TextWrapping="Wrap"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,5,0,0"/>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<Border Grid.Row="0" Grid.Column="2" Background="#11FFFFFF" CornerRadius="8" Padding="12,10">
|
||
<StackPanel>
|
||
<TextBlock Text="۲. تست سرور" FontSize="12" FontWeight="SemiBold"
|
||
Foreground="{StaticResource TextPrimaryBrush}"/>
|
||
<TextBlock Text="قبل از اتصال، تست سرور را بزنید. برای TLS، handshake واقعی اندازهگیری میشود."
|
||
FontSize="10" TextWrapping="Wrap"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,5,0,0"/>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<Border Grid.Row="2" Grid.Column="0" Background="#11FFFFFF" CornerRadius="8" Padding="12,10">
|
||
<StackPanel>
|
||
<TextBlock Text="۳. برنامهها" FontSize="12" FontWeight="SemiBold"
|
||
Foreground="{StaticResource TextPrimaryBrush}"/>
|
||
<TextBlock Text="برنامههایی که باید از تونل عبور کنند را در تب برنامهها فعال کنید."
|
||
FontSize="10" TextWrapping="Wrap"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,5,0,0"/>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<Border Grid.Row="2" Grid.Column="2" Background="#11FFFFFF" CornerRadius="8" Padding="12,10">
|
||
<StackPanel>
|
||
<TextBlock Text="۴. اتصال" FontSize="12" FontWeight="SemiBold"
|
||
Foreground="{StaticResource TextPrimaryBrush}"/>
|
||
<TextBlock Text="بعد از اتصال، کارت سلامت ترافیک را برای Leak، DNS، IPv6 و Route بررسی کنید."
|
||
FontSize="10" TextWrapping="Wrap"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,5,0,0"/>
|
||
</StackPanel>
|
||
</Border>
|
||
</Grid>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<!-- Modes -->
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="*"/>
|
||
<ColumnDefinition Width="8"/>
|
||
<ColumnDefinition Width="*"/>
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<Border Grid.Column="0" Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="حالت انتخابی"/>
|
||
<TextBlock Text="فقط برنامههای انتخابشده و مقصدهای لزومی از تونل عبور میکنند. این حالت برای مصرف کمتر و کنترل دقیقتر پیشنهاد میشود."
|
||
FontSize="11"
|
||
LineHeight="19"
|
||
TextWrapping="Wrap"
|
||
Foreground="{StaticResource TextSecondaryBrush}"/>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<Border Grid.Column="2" Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="عبور کل سیستم"/>
|
||
<TextBlock Text="وقتی Full Route روشن باشد، کل ترافیک ویندوز از تونل عبور میکند. برای تست یا زمانی که همه برنامهها باید VPN داشته باشند مناسب است."
|
||
FontSize="11"
|
||
LineHeight="19"
|
||
TextWrapping="Wrap"
|
||
Foreground="{StaticResource TextSecondaryBrush}"/>
|
||
</StackPanel>
|
||
</Border>
|
||
</Grid>
|
||
|
||
<!-- Rules + Apps -->
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="*"/>
|
||
<ColumnDefinition Width="8"/>
|
||
<ColumnDefinition Width="*"/>
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<Border Grid.Column="0" Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="برنامهها"/>
|
||
<TextBlock TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}">
|
||
برنامههای Store/MSIX و WebView2 ممکن است چند پردازش داشته باشند. اگر اپی دیده نشد، آن را باز کنید و دوباره بارگذاری برنامهها را بزنید.
|
||
</TextBlock>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<Border Grid.Column="2" Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="قوانین مسیر"/>
|
||
<TextBlock TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}">
|
||
استثناها مقصد را مستقیم نگه میدارند. لزومیها مقصد را حتی بدون انتخاب برنامه از تونل عبور میدهند. دامنه، IP و URL قابل استفاده است.
|
||
</TextBlock>
|
||
</StackPanel>
|
||
</Border>
|
||
</Grid>
|
||
|
||
<!-- Local Proxy + Diagnostics -->
|
||
<Grid>
|
||
<Grid.ColumnDefinitions>
|
||
<ColumnDefinition Width="*"/>
|
||
<ColumnDefinition Width="8"/>
|
||
<ColumnDefinition Width="*"/>
|
||
</Grid.ColumnDefinitions>
|
||
|
||
<Border Grid.Column="0" Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="SOCKS5 داخلی"/>
|
||
<TextBlock TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}">
|
||
پروکسی داخلی روی 127.0.0.1 اجرا میشود. پورت را قبل از اتصال انتخاب کنید؛ پورتهای سیستم، رزرو و پورتهای رایج توسعه محدود شدهاند.
|
||
</TextBlock>
|
||
<Border Background="#11FFFFFF" CornerRadius="6" Padding="8" Margin="0,8,0,0">
|
||
<TextBlock Text="127.0.0.1:1080"
|
||
FontSize="11"
|
||
FontFamily="Consolas"
|
||
Foreground="{StaticResource AccentBrush}"
|
||
FlowDirection="LeftToRight"/>
|
||
</Border>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
<Border Grid.Column="2" Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="کارت سلامت"/>
|
||
<TextBlock TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}">
|
||
Leak باید صفر باشد. DNS نشان میدهد درخواستهای DNS هدایت شدهاند. IPv6 blocked یعنی مسیرهای IPv6 ناخواسته بسته شدهاند. Route تعداد مسیرهای فعال و خطاها را نشان میدهد.
|
||
</TextBlock>
|
||
</StackPanel>
|
||
</Border>
|
||
</Grid>
|
||
|
||
<!-- Troubleshooting -->
|
||
<Border Style="{StaticResource CardPanel}">
|
||
<StackPanel>
|
||
<TextBlock Style="{StaticResource SectionHeader}" Text="عیبیابی سریع"/>
|
||
|
||
<Expander Header="اتصال برقرار نمیشود" Foreground="{StaticResource TextPrimaryBrush}" Margin="0,4,0,0">
|
||
<TextBlock Text="دسترسی Administrator، فایروال، پورت SOCKS5 و صحت کانفیگ را بررسی کنید. در کانفیگهای xhttp، هسته باید Xray باشد."
|
||
TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,8,0,0"/>
|
||
</Expander>
|
||
|
||
<Expander Header="ترافیک برنامه از تونل عبور نمیکند" Foreground="{StaticResource TextPrimaryBrush}" Margin="0,8,0,0">
|
||
<TextBlock Text="برنامه را در تب برنامهها فعال کنید. برای اپهای Store، برنامه را باز نگه دارید و لیست برنامهها را دوباره بارگذاری کنید."
|
||
TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,8,0,0"/>
|
||
</Expander>
|
||
|
||
<Expander Header="سایت داخلی باید مستقیم باز شود" Foreground="{StaticResource TextPrimaryBrush}" Margin="0,8,0,0">
|
||
<TextBlock Text="دامنه یا IP را به استثناها اضافه کنید. برای عبور اجباری یک مقصد از VPN، آن را به لزومیها اضافه کنید."
|
||
TextWrapping="Wrap" FontSize="11" LineHeight="19"
|
||
Foreground="{StaticResource TextSecondaryBrush}" Margin="0,8,0,0"/>
|
||
</Expander>
|
||
</StackPanel>
|
||
</Border>
|
||
|
||
</StackPanel>
|
||
</ScrollViewer>
|
||
</UserControl>
|