From da4a57eff860bb75f1da10c8593f3f43ac88fa0d Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Wed, 6 Nov 2019 15:02:56 +0000 Subject: [PATCH 1/2] display about dialog --- src/Avalonia.Native/Avalonia.Native.csproj | 1 + src/Avalonia.Native/AvaloniaNativeMenuExporter.cs | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Native/Avalonia.Native.csproj b/src/Avalonia.Native/Avalonia.Native.csproj index 35e50b1b36..88a6da8945 100644 --- a/src/Avalonia.Native/Avalonia.Native.csproj +++ b/src/Avalonia.Native/Avalonia.Native.csproj @@ -22,5 +22,6 @@ + diff --git a/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs b/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs index 3571f84131..ea3ea153bb 100644 --- a/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs +++ b/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs @@ -10,6 +10,7 @@ using Avalonia.Input; using Avalonia.Native.Interop; using Avalonia.Platform.Interop; using Avalonia.Threading; +using Avalonia.Dialogs; namespace Avalonia.Native { @@ -221,9 +222,11 @@ namespace Avalonia.Native Header = "About Avalonia", }; - aboutItem.Clicked += (sender, e) => + aboutItem.Clicked += async (sender, e) => { - // Open about dialog. + var dialog = new DefaultAboutWindow(); + + await dialog.ShowDialog((Window)result.VisualRoot); }; result.Add(aboutItem); From 6deff75c5885448ccd2f9cb06c71e513628cca33 Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Wed, 6 Nov 2019 15:33:34 +0000 Subject: [PATCH 2/2] open about dialog modal --- src/Avalonia.Native/AvaloniaNativeMenuExporter.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs b/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs index ea3ea153bb..96ff277f52 100644 --- a/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs +++ b/src/Avalonia.Native/AvaloniaNativeMenuExporter.cs @@ -11,6 +11,7 @@ using Avalonia.Native.Interop; using Avalonia.Platform.Interop; using Avalonia.Threading; using Avalonia.Dialogs; +using Avalonia.Controls.ApplicationLifetimes; namespace Avalonia.Native { @@ -224,9 +225,11 @@ namespace Avalonia.Native aboutItem.Clicked += async (sender, e) => { - var dialog = new DefaultAboutWindow(); + var dialog = new AboutAvaloniaDialog(); - await dialog.ShowDialog((Window)result.VisualRoot); + var mainWindow = (Application.Current.ApplicationLifetime as IClassicDesktopStyleApplicationLifetime)?.MainWindow; + + await dialog.ShowDialog(mainWindow); }; result.Add(aboutItem);