Index: Core/Common/src/Core.Common.Gui/RingtoetsGui.cs =================================================================== diff -u -r3ee80d5d797653a6eac5c4a46c4900ad4fbe8380 -r5933051dfa1dbc40dbf7552852e6ca85ae7b0811 --- Core/Common/src/Core.Common.Gui/RingtoetsGui.cs (.../RingtoetsGui.cs) (revision 3ee80d5d797653a6eac5c4a46c4900ad4fbe8380) +++ Core/Common/src/Core.Common.Gui/RingtoetsGui.cs (.../RingtoetsGui.cs) (revision 5933051dfa1dbc40dbf7552852e6ca85ae7b0811) @@ -834,7 +834,7 @@ private void OnActiveViewChanged(object sender, ActiveViewChangeEventArgs e) { - if (e.View == null || mainWindow == null || mainWindow.IsWindowDisposed) + if (mainWindow == null || mainWindow.IsWindowDisposed) { return; } Index: Core/Common/test/Core.Common.Test/Core.Common.Test.csproj =================================================================== diff -u -r00c8bc7fed580b4a9820a7d85b3b6d2346599f65 -r5933051dfa1dbc40dbf7552852e6ca85ae7b0811 --- Core/Common/test/Core.Common.Test/Core.Common.Test.csproj (.../Core.Common.Test.csproj) (revision 00c8bc7fed580b4a9820a7d85b3b6d2346599f65) +++ Core/Common/test/Core.Common.Test/Core.Common.Test.csproj (.../Core.Common.Test.csproj) (revision 5933051dfa1dbc40dbf7552852e6ca85ae7b0811) @@ -60,6 +60,14 @@ pdbonly + + False + ..\..\..\..\packages\Fluent.Ribbon.3.4.0\lib\net40\Fluent.dll + + + False + ..\..\..\..\packages\Fluent.Ribbon.3.4.0\lib\net40\Microsoft.Windows.Shell.dll + ..\..\..\..\packages\NUnit.2.6.4\lib\nunit.framework.dll True @@ -76,6 +84,9 @@ + + ..\..\..\..\packages\Fluent.Ribbon.3.4.0\lib\net40\System.Windows.Interactivity.dll + Index: Core/Common/test/Core.Common.Test/Gui/RingtoetsGuiTests.cs =================================================================== diff -u -r25019cc752a91361f32968c26d48064ed35a916c -r5933051dfa1dbc40dbf7552852e6ca85ae7b0811 --- Core/Common/test/Core.Common.Test/Gui/RingtoetsGuiTests.cs (.../RingtoetsGuiTests.cs) (revision 25019cc752a91361f32968c26d48064ed35a916c) +++ Core/Common/test/Core.Common.Test/Gui/RingtoetsGuiTests.cs (.../RingtoetsGuiTests.cs) (revision 5933051dfa1dbc40dbf7552852e6ca85ae7b0811) @@ -1,7 +1,10 @@ using System.Linq; using Core.Common.Base.Plugin; +using Core.Common.Controls.Views; using Core.Common.Gui; +using Core.Common.Gui.Forms.MainWindow; +using Core.Common.Test.TestObjects; using NUnit.Framework; using Rhino.Mocks; @@ -33,7 +36,7 @@ [Test] public void CheckViewPropertyEditorIsInitialized() { - using (var gui = new RingtoetsGui()) + using (new RingtoetsGui()) { Assert.NotNull(ViewPropertyEditor.Gui); } @@ -145,5 +148,34 @@ } mocks.VerifyAll(); } + + [Test] + [RequiresSTA] + public void ActiveViewChanged_LastDocumentViewClosed_EventFired() + { + // Setup + using (var gui = new RingtoetsGui()) + { + gui.MainWindow = new MainWindow(gui); + gui.Run(); + + var view = new TestView(); + + // Precondition + Assert.AreEqual(0, gui.DocumentViews.Count); + + gui.DocumentViews.Add(view); + + var hitCount = 0; + gui.ActiveViewChanged += (s, e) => hitCount++; + + // Call + gui.DocumentViews.RemoveAt(0); + + // Assert + Assert.AreEqual(0, gui.DocumentViews.Count); + Assert.AreEqual(1, hitCount); + } + } } } \ No newline at end of file Index: Core/Common/test/Core.Common.Test/packages.config =================================================================== diff -u -r6633a5deea8082d57dec6185caf4ff428f034672 -r5933051dfa1dbc40dbf7552852e6ca85ae7b0811 --- Core/Common/test/Core.Common.Test/packages.config (.../packages.config) (revision 6633a5deea8082d57dec6185caf4ff428f034672) +++ Core/Common/test/Core.Common.Test/packages.config (.../packages.config) (revision 5933051dfa1dbc40dbf7552852e6ca85ae7b0811) @@ -1,6 +1,7 @@  +