From d3b5befe3e7386aa40048d18e72225f8ae0d2a00 Mon Sep 17 00:00:00 2001 From: lwouis Date: Tue, 24 Dec 2024 09:54:58 +0100 Subject: [PATCH] fix: app crash from v7.13.0 (closes #4016) --- src/logic/Windows.swift | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/logic/Windows.swift b/src/logic/Windows.swift index 2095eeeb..03df1eae 100644 --- a/src/logic/Windows.swift +++ b/src/logic/Windows.swift @@ -251,16 +251,15 @@ class Windows { for (index, cgWindowId) in Spaces.windowsInSpaces(Spaces.visibleSpaces).enumerated() { windowLevelMap[cgWindowId] = index } - var orderForUnlistedWindows = Int.max - for window in list { - if let listedOrder = windowLevelMap[window.cgWindowId] { - window.lastFocusOrder = listedOrder - } else { - window.lastFocusOrder = orderForUnlistedWindows - orderForUnlistedWindows -= 1 - } - } - list.sort { $0.lastFocusOrder < $1.lastFocusOrder } + list = list + .sorted { w1, w2 in + (windowLevelMap[w1.cgWindowId] ?? .max) < (windowLevelMap[w2.cgWindowId] ?? .max) + } + .enumerated() + .map { (index, window) -> Window in + window.lastFocusOrder = index + return window + } } static func refreshThumbnailsAsync(_ screen: NSScreen, _ currentIndex: Int) {