feature: support git.core.askpass (#239)

This commit is contained in:
leo 2024-07-08 22:07:00 +08:00
parent 8fa19ecd0c
commit cbe4c36525
No known key found for this signature in database
14 changed files with 211 additions and 60 deletions

View file

@ -0,0 +1,52 @@
using System;
using Avalonia.Input;
using Avalonia.Interactivity;
namespace SourceGit.Views
{
public partial class Askpass : ChromelessWindow
{
public string KeyName
{
get;
private set;
} = string.Empty;
public string Passphrase
{
get;
set;
} = string.Empty;
public Askpass()
{
DataContext = this;
InitializeComponent();
}
public Askpass(string keyname)
{
KeyName = keyname;
DataContext = this;
InitializeComponent();
}
private void BeginMoveWindow(object sender, PointerPressedEventArgs e)
{
BeginMoveDrag(e);
}
private void CloseWindow(object sender, RoutedEventArgs e)
{
Console.Out.WriteLine("No passphrase entered.");
Environment.Exit(-1);
}
private void EnterPassword(object sender, RoutedEventArgs e)
{
Console.Out.Write($"{Passphrase}\n");
Environment.Exit(0);
}
}
}