diff --git a/OpenRA.Game/OpenRA.Game.csproj b/OpenRA.Game/OpenRA.Game.csproj
index fd235f027a..8f93aea7c9 100644
--- a/OpenRA.Game/OpenRA.Game.csproj
+++ b/OpenRA.Game/OpenRA.Game.csproj
@@ -246,6 +246,8 @@
+
+
diff --git a/OpenRA.Game/Primitives/ObservableList.cs b/OpenRA.Game/Primitives/ObservableList.cs
new file mode 100644
index 0000000000..d104945f63
--- /dev/null
+++ b/OpenRA.Game/Primitives/ObservableList.cs
@@ -0,0 +1,118 @@
+#region Copyright & License Information
+/*
+ * Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
+ * This file is part of OpenRA, which is free software. It is made
+ * available to you under the terms of the GNU General Public License
+ * as published by the Free Software Foundation. For more information,
+ * see COPYING.
+ */
+#endregion
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+
+namespace OpenRA.Primitives
+{
+ public class ObservableList : IList, IObservableCollection
+ {
+ protected IList innerList;
+
+ public event Action