Hi all, macOS 10.14 is now in (public) beta and we've had some time to test Qt on it.
This time there are (at least) two changes which will impact Qt applications: Core Animation layer backed NSViews/QWindows and dark mode. We’re aiming to have improvements in place for Qt 5.12. See below for specific details. In the mean time it’s possible to continue developing and shipping applications for macOS 10.14, also using current Qt versions. This can be done by linking against the 10.13 (or earlier) SDK, which will opt out of dark mode support and layer backing. It is the syslibroot argument on the linker line which determines the SDK version for this purpose, for example: —Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk Dark appearance: In theory, applications should pick up the dark appearance via the style and palette. In practice, they may not due to incomplete/buggy QPalette and QMacStyle implementations, or hardcoded colors in Qt or the application. The current state of the patches for dev/5.12 is that custom-styled applications can work well in dark mode, for example Qt Creator with a dark theme. The plan is to disable dark mode support by default in Qt, at least until QMacStyle is fixed. This means that applications will start up using standard Aqua theme/colors, also when the desktop is configured for dark mode. The application has the final call here, and can opt in or out by setting the NSRequiresAquaSystemAppearance key in the Info.plist file. For example: <key>NSRequiresAquaSystemAppearance</key> <false/> will indicate that the app _does_ support dark mode, and Qt will get out of the way and not apply its disable. Setting it to true will insulate the app against any changes in the Qt default. Layer backing: We are seeing some issues here, in particular related to multithreaded OpenGL (as used by the default threaded Qt Quick render loop). We are sorting out if this is something that can or should be fixed in Qt. So far we’ve not found a way to opt out of layer backing when on the 10.14 SDK, so linking against an earlier SDK looks to be the only opt-out option here. If you want to file a bug for something that is not working, then please make sure it has “Mojave” somewhere in the title and we’ll sort it into the correct in pile. Thanks for reading! Morten _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest