AppleScript do przełączania trybu ciemnego z zanikaniem

4

Mam skrypt do przełączania trybu ciemnego za pomocą

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

Jednak powoduje to, że każda aplikacja natychmiast zmienia tryb z jasnego na ciemny. Jeśli korzystam z preferencji systemowych do przełączania trybu ciemnego, wszystkie aplikacje jednocześnie mają powolne zanikanie od trybu jasnego do ciemnego (lub odwrotnie). Chociaż jest to bardzo niewielka zmiana estetyczna, chciałbym, aby zanikanie wystąpiło, gdy użyję skryptu do przełączenia trybu ciemnego. Czy istnieje sposób przełączania trybu ciemnego w taki sam sposób, jak preferencje systemowe, aby inicjować przełączanie zanikające?

Jenny Shoars
źródło
1
static let fade: CATransitionType Zawartość warstwy zanika, gdy staje się widoczna lub ukryta
Buscar웃
1
Czy próbowałeś / rozważałeś używanie skryptów interfejsu użytkownika? Wyobrażam sobie, że to zadziała. (Możesz zapobiec wyświetlaniu Preferencji systemowych, ustawiając granice okna na 00)
Wowfunhappy
1
@Wowfunhappy, To było z mojego starego postu i nie trzeba tego robić, po prostu nie używaj activate z Preferencjami systemowymi, użyj np. reveal pane id "com.apple.preference.general"
user3439894

Odpowiedzi:

2

W tej chwili wierzę, że nie jest to możliwe. Nawet jeśli przełączasz się między trybami Dark / Light w Automatorze, wywoła to ten sam interfejs API, który robi Twój AppleScript i natychmiast go zmieni. Co sprawia, że ​​wierzę, że jeśli Apple nie sprawi, że będzie się ładnie wygasać dla własnego narzędzia, obecnie nie można tego zrobić.

Superman.Lopez
źródło