mirror of
https://github.com/Stone-Red-Code/RemSox.git
synced 2026-09-04 09:06:23 +02:00
Handle window close commands and interaction logic improvements
This commit is contained in:
@@ -123,9 +123,24 @@ public static class WindowManager
|
||||
|
||||
public static void CloseWindowsForProcess(int processId)
|
||||
{
|
||||
List<Window> windowsToClose = new();
|
||||
lock (windowsLock)
|
||||
{
|
||||
windows.Remove(processId);
|
||||
if (windows.TryGetValue(processId, out var processWindows))
|
||||
{
|
||||
windowsToClose.AddRange(processWindows);
|
||||
windows.Remove(processId);
|
||||
}
|
||||
}
|
||||
|
||||
if (windowsToClose.Count > 0)
|
||||
{
|
||||
List<RenderCommand> closeCommands = new();
|
||||
foreach (var window in windowsToClose)
|
||||
{
|
||||
closeCommands.Add(new RenderCommand { WindowId = window.Id, ElementId = window.Id, ElementType = "WindowClose", Position = window.Position, Properties = new Dictionary<string, object?>() });
|
||||
}
|
||||
renderSource.Render(closeCommands);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user