38 lines
1.0 KiB
C#
38 lines
1.0 KiB
C#
using Avalonia.Controls;
|
|
using Avalonia.Input;
|
|
using Avalonia.Interactivity;
|
|
using Avalonia.Threading;
|
|
using PSCHelpdesk.Plugins.HetznerServer.Models;
|
|
using PSCHelpdesk.Plugins.HetznerServer.ViewModels;
|
|
|
|
namespace PSCHelpdesk.Plugins.HetznerServer.Views;
|
|
|
|
public partial class ServerView : UserControl
|
|
{
|
|
public ServerView()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void openSSH(object? sender, RoutedEventArgs e)
|
|
{
|
|
((ServerViewModel)DataContext).SSH(((Button)sender).DataContext as Server);
|
|
}
|
|
|
|
private void openSCP(object? sender, RoutedEventArgs e)
|
|
{
|
|
((ServerViewModel)DataContext).SCP(((Button)sender).DataContext as Server);
|
|
}
|
|
|
|
private void InputElement_OnDoubleTapped(object? sender, TappedEventArgs e)
|
|
{
|
|
Uri? uri = new Uri("https://" + ((TextBox)sender).Text);
|
|
if (uri is not null)
|
|
{
|
|
Dispatcher.UIThread.Post(async () =>
|
|
{
|
|
bool success = await TopLevel.GetTopLevel(this)!.Launcher.LaunchUriAsync(uri);
|
|
});
|
|
}
|
|
}
|
|
} |