Search code examples
objective-cxcodemacosappearancemacos-darkmode

macOS Dark Mode and NSAboutPanelOptionCredits


I have a fairly straight forward App called Range in the app store that I want to make dark mode compliant for macOS 10.14. I've noticed is that the About window is not changing all of the text colors.

I'm using the NSAboutPanelOptionCredits where I just need to bundle a Credits.rtf file and the app handles the rest.

https://developer.apple.com/documentation/appkit/nsaboutpaneloptioncredits?language=objc

Problem is, when I change to dark mode, the text in the file remains black, while the other auto-included text changes to white (app name, version etc...) I've opened up the .rtf file and there is no Inherit setting, or anything of the sort.

Any idea what I'm doing wrong, and/or missing?

Appreciate any thoughts. Thanks!

Light about window Dark about window


Solution

  • The trick is to use semantic colors.

    Using Xcode, edit your RTF file. Select the text and bring up the text color picker.

    Xcode adds the Developer colors to the color picker. Select the appropriate semantic color for your text; I tend to use labelColor, secondaryLabelColor, and linkColor.

    When you switch to dark mode, these semantic colors change appropriately.