Files
HawkeyeVision/VisionBuilder.UI.Avalonia.Uno/Services/AvaloniaPasswordInputService.cs
EugeneTes 4bd117af47 plugin system docs
custom buttons for plugins
calibration functions for Leeform
2026-03-30 16:15:47 +02:00

27 lines
766 B
C#

using VisionBuilder.UI.Common.Services;
using VisionBuilder.UI.Avalonia.Uno.Views;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
namespace VisionBuilder.UI.Avalonia.Uno.Services;
public class AvaloniaPasswordInputService : IPasswordInputService
{
public async Task<string?> GetPasswordAsync()
{
var dialog = new PasswordDialog();
var parent = GetMainWindow();
if (parent != null)
return await dialog.ShowDialog<string?>(parent);
return null;
}
private static Window? GetMainWindow()
{
if (Application.Current?.ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
return desktop.MainWindow;
return null;
}
}