diff --git a/samples/ControlCatalog/App.xaml.cs b/samples/ControlCatalog/App.xaml.cs index 1f466d9f91..100cfa634e 100644 --- a/samples/ControlCatalog/App.xaml.cs +++ b/samples/ControlCatalog/App.xaml.cs @@ -15,6 +15,8 @@ namespace ControlCatalog var mainWindow = new MainWindow(); mainWindow.Show(); + + MainWindow = mainWindow; } } } diff --git a/src/Avalonia.Controls/Application.cs b/src/Avalonia.Controls/Application.cs index 2893505655..b750e570b3 100644 --- a/src/Avalonia.Controls/Application.cs +++ b/src/Avalonia.Controls/Application.cs @@ -272,6 +272,8 @@ namespace Avalonia { mainWindow.Show(); } + + MainWindow = mainWindow; } Run(_mainLoopCancellationTokenSource.Token); diff --git a/src/Avalonia.Controls/Window.cs b/src/Avalonia.Controls/Window.cs index 648256e667..411685800e 100644 --- a/src/Avalonia.Controls/Window.cs +++ b/src/Avalonia.Controls/Window.cs @@ -49,8 +49,6 @@ namespace Avalonia.Controls /// public class Window : WindowBase, IStyleable, IFocusScope, ILayoutRoot, INameScope { - private static bool s_hasAddedFirstWindow; - /// /// Defines the property. /// @@ -262,18 +260,6 @@ namespace Avalonia.Controls } Application.Current.Windows.Add(window); - - if (s_hasAddedFirstWindow) - { - return; - } - - s_hasAddedFirstWindow = true; - - if (Application.Current.MainWindow == null) - { - Application.Current.MainWindow = window; - } } private static void RemoveWindow(Window window) diff --git a/tests/Avalonia.Controls.UnitTests/ApplicationTests.cs b/tests/Avalonia.Controls.UnitTests/ApplicationTests.cs index 7cedd9b69a..f362e691dc 100644 --- a/tests/Avalonia.Controls.UnitTests/ApplicationTests.cs +++ b/tests/Avalonia.Controls.UnitTests/ApplicationTests.cs @@ -129,18 +129,5 @@ namespace Avalonia.Controls.UnitTests Assert.True(raised); } } - - [Fact] - public void Should_Have_MainWindow_After_First_Window_Shown() - { - using (UnitTestApplication.Start(TestServices.StyledWindow)) - { - var mainWindow = new Window(); - - mainWindow.Show(); - - Assert.Equal(mainWindow, Application.Current.MainWindow); - } - } } }