diff --git a/.idea/.idea.Blacklight/.idea/avalonia.xml b/.idea/.idea.Blacklight/.idea/avalonia.xml
index 2afc772b111054658be9d20a1b66a0b0e812d0d9..b0754ad44a5dd0c71ed0944bcf58a386255a172b 100644
--- a/.idea/.idea.Blacklight/.idea/avalonia.xml
+++ b/.idea/.idea.Blacklight/.idea/avalonia.xml
@@ -24,6 +24,7 @@
         <entry key="Blacklight/Views/Utility/MarkdownText.axaml" value="Blacklight.Desktop/Blacklight.Desktop.csproj" />
         <entry key="Blacklight/Views/Views/ClientView.axaml" value="Blacklight/Blacklight.csproj" />
         <entry key="Blacklight/Views/Views/SettingsView.axaml" value="Blacklight/Blacklight.csproj" />
+        <entry key="Blacklight/Views/Windows/CreateChannelView.axaml" value="Blacklight.Desktop/Blacklight.Desktop.csproj" />
         <entry key="Blacklight/Views/Windows/CreateChannelWindow.axaml" value="Blacklight.Desktop/Blacklight.Desktop.csproj" />
       </map>
     </option>
diff --git a/Blacklight.Desktop/Program.cs b/Blacklight.Desktop/Program.cs
index 3dfca23b3953026b831cfc585e6ac23362ea258d..47254d036503f1d9b100efc73de30a8ebff140b4 100644
--- a/Blacklight.Desktop/Program.cs
+++ b/Blacklight.Desktop/Program.cs
@@ -6,14 +6,20 @@ namespace Blacklight.Desktop;
 
 sealed class Program
 {
+    private static Mutex _mutex = new Mutex(true, "{BFB1CB9E-78E6-4CC4-AB51-AD561BE8E21A}");
     // Initialization code. Don't use any Avalonia, third-party APIs or any
     // SynchronizationContext-reliant code before AppMain is called: things aren't initialized
     // yet and stuff might break.
     [STAThread]
     public static void Main(string[] args)
     {
-        BuildAvaloniaApp()
-            .StartWithClassicDesktopLifetime(args);
+        if (_mutex.WaitOne(TimeSpan.Zero, true))
+        {
+            
+            BuildAvaloniaApp()
+                .StartWithClassicDesktopLifetime(args);
+            _mutex.ReleaseMutex();
+        }
     }
     
     // Avalonia configuration, don't remove; also used by visual designer.