From dd41b5a1e0eae8e1ff2a93fee3ffafb9594ba2d4 Mon Sep 17 00:00:00 2001 From: Nico Verbruggen Date: Thu, 4 Feb 2021 22:00:58 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Fix=20threading=20issue?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PHP Monitor.xcodeproj/project.pbxproj | 4 +- phpmon/Singletons/MainMenu.swift | 56 +++++++++++++-------------- 2 files changed, 29 insertions(+), 31 deletions(-) diff --git a/PHP Monitor.xcodeproj/project.pbxproj b/PHP Monitor.xcodeproj/project.pbxproj index efea762..fd28da2 100644 --- a/PHP Monitor.xcodeproj/project.pbxproj +++ b/PHP Monitor.xcodeproj/project.pbxproj @@ -455,7 +455,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MARKETING_VERSION = 3.0; + MARKETING_VERSION = "3.0-prerelease"; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -479,7 +479,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MARKETING_VERSION = 3.0; + MARKETING_VERSION = "3.0-prerelease"; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; diff --git a/phpmon/Singletons/MainMenu.swift b/phpmon/Singletons/MainMenu.swift index b1976fe..40d57cd 100644 --- a/phpmon/Singletons/MainMenu.swift +++ b/phpmon/Singletons/MainMenu.swift @@ -76,35 +76,33 @@ class MainMenu: NSObject, NSWindowDelegate { Update the menu's contents, based on what's going on. */ public func update() { - DispatchQueue.global(qos: .userInitiated).async { [unowned self] in - // Update the menu item on the main thread - DispatchQueue.main.async { - // Create a new menu - let menu = StatusMenu() - - // Add the PHP versions (or error messages) - menu.addPhpVersionMenuItems() - menu.addItem(NSMenuItem.separator()) - - // Add the possible actions - menu.addPhpActionMenuItems() - menu.addItem(NSMenuItem.separator()) - - // Add information about services & actions - menu.addPhpConfigurationMenuItems() - menu.addItem(NSMenuItem.separator()) - - // Add about & quit menu items - menu.addItem(NSMenuItem(title: "mi_about".localized, action: #selector(self.openAbout), keyEquivalent: "")) - menu.addItem(NSMenuItem(title: "mi_quit".localized, action: #selector(self.terminateApp), keyEquivalent: "q")) - - // Make sure every item can be interacted with - menu.items.forEach({ (item) in - item.target = self - }) - - self.statusItem.menu = menu - } + // Update the menu item on the main thread + DispatchQueue.main.async { + // Create a new menu + let menu = StatusMenu() + + // Add the PHP versions (or error messages) + menu.addPhpVersionMenuItems() + menu.addItem(NSMenuItem.separator()) + + // Add the possible actions + menu.addPhpActionMenuItems() + menu.addItem(NSMenuItem.separator()) + + // Add information about services & actions + menu.addPhpConfigurationMenuItems() + menu.addItem(NSMenuItem.separator()) + + // Add about & quit menu items + menu.addItem(NSMenuItem(title: "mi_about".localized, action: #selector(self.openAbout), keyEquivalent: "")) + menu.addItem(NSMenuItem(title: "mi_quit".localized, action: #selector(self.terminateApp), keyEquivalent: "q")) + + // Make sure every item can be interacted with + menu.items.forEach({ (item) in + item.target = self + }) + + self.statusItem.menu = menu } }