Observing NSAppearance changes in macos

Derrick Ho
Jan 14, 2021

Do you want your app to do something in response to the user changing their dark/light mode value from the macOS System Preferences?

Use KVO on the “effectiveAppearance” property

NSApplication.shared.publisher(for: \.effectiveAppearance).sink { 
// Do something when effectiveAppearance changes value
}

--

--