Come passare dalla scheda Oggi alle Notifiche in Centro notifiche su macOS Sierra?

1

Voglio poter passare tra le schede (Oggi e Notifiche) nel Centro di notifica utilizzando una scorciatoia da tastiera. Qualsiasi modo di farlo su macOS Sierra?

So che era possibile su Yosemite, ma non ho mai avuto Yosemite, quindi non ho potuto verificarlo.

Modifica: voglio essere in grado di eseguire uno script Apple, non utilizzare una scorciatoia da tastiera. Utilizzando lo script Apple posso quindi inserirlo in un programma di terze parti per ottenere i miei risultati.

Inoltre, il codice sottostante ha funzionato parzialmente. Per cominciare, è possibile posizionare un if / else all'inizio in modo che funzioni in questo modo:

se Centro di notifica è già aperto, passa alla prossima cosa (che passa tra i pulsanti Oggi e Notifica) ma se non è aperto, aprilo e cambia i pulsanti.

    
posta user3735534 26.09.2016 - 13:55
fonte

2 risposte

1

Ho fatto un po 'di ricerca su Google e non sono riuscito a trovare una scorciatoia da tastiera nativa diversa da quella per aprire solo il Centro di notifica, a qualsiasi visualizzazione fosse l'ultima volta, e questo deve essere impostato dall'utente in Preferenze di Sistema > Tastiera > Tasti di scelta rapida > Controllo missione > Mostra Centro di notifica. Ovviamente, è sufficiente aprire il Centro di notifica fino a visualizzare l'ultima visualizzazione.

Tuttavia, se vai a Preferenze di Sistema > Tastiera > Tasti di scelta rapida, c'è "Accesso completo alla tastiera: in finestre e finestre di dialogo, premere Tab per spostare lo stato attivo della tastiera tra:" e due pulsanti di opzione, "Solo caselle di testo e elenchi" (impostazione predefinita) e "Tutti i controlli". Se selezioni "Tutti i controlli", potresti essere in grado di utilizzare, ad es. scheda, immettere, i tasti freccia per navigare nel Centro di notifica. Al momento non sono in grado di testarlo e perché ho detto " ... potrebbe essere in grado di usare ... ".

Ciò lascia una soluzione alternativa di AppleScript da utilizzare in un'app di terze parti che può utilizzare lo script che assegna una scorciatoia da tastiera o un servizio Automator a cui è possibile assegnare una scorciatoia da tastiera.

Il codice di AppleScript sotto alterna lo stato dei due pulsanti nel Centro di notifica.

try
    tell application "System Events"
        tell process "SystemUIServer"
            click menu bar item "Notification Center" of menu bar 1
        end tell
        tell application "System Events"
            tell process "Notification Center"
                if value of radio button "Today" of radio group 1 of window "NotificationTableWindow" is equal to 1 then
                    click radio button "Notifications" of radio group 1 of window "NotificationTableWindow"
                else
                    click radio button "Today" of radio group 1 of window "NotificationTableWindow"
                end if
            end tell
        end tell
    end tell
end try

Puoi anche modificare il codice per agire solo su un dato pulsante, se lo desideri. Dovrebbe essere ovvio come modificarlo, tuttavia è stato chiesto se hai bisogno di ulteriore aiuto.

    
risposta data 27.09.2016 - 02:57
fonte
0

In macOS High Sierra, il nome dell'accessibilità della finestra del Centro notifiche è cambiato in "Centro notifiche".

Il seguente AppleScript dovrebbe consentire la commutazione tra le due schede (Oggi e Notifiche) in macOS High Sierra (10.13), Sierra (10.12) e possibilmente anche versioni precedenti.

on osVersion()
    set _major to system attribute "sys1" -- 10
    set _minor to system attribute "sys2" -- 13 for High Sierra
    return (_major as string) & "." & (_minor as string)
end osVersion

on toggleNotificationCenter()
    tell application "System Events"
        tell process "SystemUIServer"
            click menu bar item "Notification Center" of menu bar 1
        end tell
    end tell
end toggleNotificationCenter

on toggleCenterButton()
    set notificationWindowName to "Notification Center" -- High Sierra
    considering numeric strings
        if osVersion() < "10.13" then
            set notificationWindowName to "NotificationTableWindow"
        end if
    end considering

    tell application "System Events"
        tell process "Notification Center"
            if value of radio button "Today" of radio group 1 of window notificationWindowName is equal to 1 then
                click radio button "Notifications" of radio group 1 of window notificationWindowName
            else
                click radio button "Today" of radio group 1 of window notificationWindowName
            end if
        end tell
    end tell
end toggleCenterButton


try
    toggleNotificationCenter()
    toggleCenterButton()
on error
    toggleNotificationCenter()
    toggleCenterButton()
end try
    
risposta data 07.01.2018 - 04:43
fonte

Leggi altre domande sui tag