sourcegit/src/Views/Askpass.axaml
leo 58fbb16347
code_review: PR #644
- use `AutoFocusBehaviour.IsEnable` instead of toggle focus by code in `OnOpened `

Signed-off-by: leo <longshuang@msn.cn>
2024-11-03 10:58:50 +08:00

73 lines
3 KiB
XML

<v:ChromelessWindow xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:v="using:SourceGit.Views"
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
x:Class="SourceGit.Views.Askpass"
x:DataType="v:Askpass"
Icon="/App.ico"
Title="{DynamicResource Text.Askpass}"
SizeToContent="WidthAndHeight"
CanResize="False"
WindowStartupLocation="CenterScreen">
<Grid RowDefinitions="Auto,*">
<!-- TitleBar -->
<Grid Grid.Row="0" Height="28" IsVisible="{Binding !UseSystemWindowFrame}">
<Border Background="{DynamicResource Brush.TitleBar}"
BorderThickness="0,0,0,1" BorderBrush="{DynamicResource Brush.Border0}"
PointerPressed="BeginMoveWindow"/>
<Path Width="14" Height="14"
Margin="10,0,0,0"
HorizontalAlignment="Left"
Data="{StaticResource Icons.Password}"
IsVisible="{OnPlatform True, macOS=False}"/>
<TextBlock Classes="bold"
Text="{DynamicResource Text.Askpass}"
HorizontalAlignment="Center" VerticalAlignment="Center"
IsHitTestVisible="False"/>
<v:CaptionButtons HorizontalAlignment="Right"
IsCloseButtonOnly="True"
IsVisible="{OnPlatform True, macOS=False}"/>
</Grid>
<StackPanel Grid.Row="1" Margin="0,16" Orientation="Vertical">
<Border Margin="16,0">
<TextBlock Text="{Binding Description}" TextWrapping="Wrap"/>
</Border>
<TextBox Margin="16"
MinWidth="300"
Height="32"
Focusable="True"
Text="{Binding Passphrase, Mode=TwoWay}"
PasswordChar="*"
RevealPassword="{Binding ShowPassword, Mode=OneWay}"
HorizontalAlignment="Stretch"
v:AutoFocusBehaviour.IsEnabled="True">
<TextBox.InnerRightContent>
<ToggleButton Grid.Column="6"
Classes="toggle_untracked"
Width="26" Height="14"
IsChecked="{Binding ShowPassword, Mode=TwoWay}"/>
</TextBox.InnerRightContent>
</TextBox>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<Button Classes="flat primary"
Width="80"
Content="{DynamicResource Text.Sure}"
Click="EnterPassword"
HotKey="Enter"/>
<Button Classes="flat"
Width="80"
Margin="16,0,0,0"
Content="{DynamicResource Text.Cancel}"
Click="CloseWindow"/>
</StackPanel>
</StackPanel>
</Grid>
</v:ChromelessWindow>