4

I have a script to toggle dark mode using

tell application "System Events" tell appearance preferences set dark mode to not dark mode end tell end tell 

However, this causes every application to instantly change from light to dark mode, as soon as it can. If I use the system preferences to toggle dark mode, all apps simultaneously have a slow fade from light to dark mode (or vice versa). Though this is a very minor aesthetic change, I would like to have the fade occur when I use my script to toggle dark mode. Is there a way to toggle dark mode the same way system preferences does so that it initiates the fading toggle?

3
  • 1
    static let fade: CATransitionType The layer’s content fades as it becomes visible or hidden Commented Oct 14, 2018 at 17:41
  • 1
    Have you tried / considered using UI scripting? I imagine that would work. (You can prevent System Preferences from appearing by setting the window bounds to 00) Commented Oct 14, 2018 at 19:26
  • 1
    @Wowfunhappy, That was from an old post of mine and does not need to be done, Just do not use activate with System Preferences, use e.g. reveal pane id "com.apple.preference.general" Commented Oct 14, 2018 at 20:39

2 Answers 2

2

I believe at the moment this is not possible. Even when you switch between Dark/Light modes in Automator, it will call the same API that your AppleScript does and change it immediately. Which makes me believe if Apple didn't make it fade nicely for its own tool, it currently can't be done.

1
  • Is there a way to detect which mode the system is in and swap based off of that? Commented Apr 18, 2020 at 15:15
0

Here is a one liner to toggle between dark-mode

 osascript -e 'tell app "System Events" to tell appearance preferences to set dark mode to not dark mode' 

Better as a method

dark-mode() { osascript -e 'tell app "System Events" to tell appearance preferences to set dark mode to not dark mode' } 

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.