From 9da5b6f7432dc1d87cec94040ede69cb2f7ff537 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Fri, 31 Aug 2018 14:02:51 +0200 Subject: Revert "macOS: Force light theme on macOS 10.14+" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This does not really work: as soon as you build with the 10.14 SDK you opt-in to having updated palette management, which the Qt 5.11 series does not have. This leaves app developers with two ways to opt-out of dark mode: - Build with the 10.13 (or earlier) SDK. - Set NSRequiresAquaSystemAppearance in Info.plist This reverts commit 04671a80db32bd7fce470c50934cf60f2e8ffa70. Change-Id: I5c01b9965da45de914f699526ba0723837f36e1d Reviewed-by: Tor Arne Vestbø Reviewed-by: Gabriel de Dietrich --- src/plugins/platforms/cocoa/qcocoaintegration.mm | 21 --------------------- 1 file changed, 21 deletions(-) (limited to 'src/plugins') diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm index 79f7ebda54..55b3805df3 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.mm +++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm @@ -70,12 +70,6 @@ #include -#if !QT_MACOS_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_10_14) -@interface NSApplication (MojaveForwardDeclarations) -@property (strong) NSAppearance *appearance NS_AVAILABLE_MAC(10_14); -@end -#endif - static void initResources() { Q_INIT_RESOURCE(qcocoaresources); @@ -137,21 +131,6 @@ QCocoaIntegration::QCocoaIntegration(const QStringList ¶mList) NSApplication *cocoaApplication = [QNSApplication sharedApplication]; qt_redirectNSApplicationSendEvent(); - if (__builtin_available(macOS 10.14, *)) { - // Disable dark appearance, unless the Info.plist or environment requests that it should be enabled - bool plistEnablesDarkAppearance = [[[NSBundle mainBundle] objectForInfoDictionaryKey: - @"NSRequiresAquaSystemAppearance"] boolValue]; - - bool hasEnvironmentRequiresAquaAppearance; - int environmentRequiresAquaAppearance = qEnvironmentVariableIntValue( - "QT_MAC_REQUIRES_AQUA_SYSTEM_APPEARANCE", &hasEnvironmentRequiresAquaAppearance); - bool environmentEnablesDarkAppearance = hasEnvironmentRequiresAquaAppearance - && environmentRequiresAquaAppearance == 0; - - if (!(plistEnablesDarkAppearance || environmentEnablesDarkAppearance)) - NSApp.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua]; - } - if (qEnvironmentVariableIsEmpty("QT_MAC_DISABLE_FOREGROUND_APPLICATION_TRANSFORM")) { // Applications launched from plain executables (without an app // bundle) are "background" applications that does not take keybaord -- cgit v1.2.3