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
}

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

No responses yet

Write a response