From 5a35aa95bcc103089f951ca3e4801161bbdea0f7 Mon Sep 17 00:00:00 2001 From: lwouis Date: Tue, 3 Feb 2026 22:23:08 +0100 Subject: [PATCH] perf: move app icon capture to background queue --- src/logic/Application.swift | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/logic/Application.swift b/src/logic/Application.swift index bd08b05e..e301579d 100644 --- a/src/logic/Application.swift +++ b/src/logic/Application.swift @@ -73,13 +73,19 @@ class Application: NSObject { pid = runningApplication.processIdentifier isHidden = runningApplication.isHidden hasBeenActiveOnce = runningApplication.isActive - icon = Application.appIconWithoutPadding(runningApplication.icon) localizedName = runningApplication.localizedName bundleIdentifier = runningApplication.bundleIdentifier bundleURL = runningApplication.bundleURL executableURL = runningApplication.executableURL debugId = "(pid:\(pid) \(bundleIdentifier ?? bundleURL?.absoluteString ?? executableURL?.absoluteString ?? localizedName))" super.init() + BackgroundWork.screenshotsQueue.addOperation { [weak self] in + guard let self else { return } + let r = Application.appIconWithoutPadding(runningApplication.icon) + DispatchQueue.main.async { [weak self] in + self?.icon = r + } + } Logger.info { self.debugId } observeEventsIfEligible() kvObservers = [