Mesen2/UI/Views/MainMenuView.axaml.cs
2023-01-25 16:03:56 -05:00

38 lines
892 B
C#

using Avalonia.Controls;
using Avalonia.Interactivity;
using Avalonia.Markup.Xaml;
using Mesen.Utilities;
using Mesen.ViewModels;
namespace Mesen.Views
{
public class MainMenuView : UserControl
{
public Menu MainMenu { get; }
public MainMenuView()
{
InitializeComponent();
MainMenu = this.GetControl<Menu>("MainMenu");
MainMenu.MenuClosed += (s, e) => {
//When an option is selected in the menu (e.g with enter or mouse click)
//steal focus away from the menu to ensure pressing e.g left/right goes to the
//game only and doesn't re-activate the main menu
ApplicationHelper.GetMainWindow()?.Focus();
};
}
private void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}
private void mnuTools_Opened(object sender, RoutedEventArgs e)
{
if(DataContext is MainMenuViewModel model) {
model.UpdateNetplayMenu();
}
}
}
}