Respostas:
Você pode atribuir um atalho de teclado a um script como este:
tell application "System Events" to click window 1 of process "Notification Center"
tell application "System Events" to click button "Reply" of window 1 of process "Notification Center"
Mas não funciona. Porque você precisa mover o ponteiro do mouse sobre a notificação ou o botão de resposta não será exibido.
click button "Reply" of window 1
pode funcionar se você alterou o estilo de alerta de banners para alertas.
Aqui está um script para fazer isso usando o JavaScript for Automation da Yosemite e sua ponte Objective-C.
ObjC.import("CoreGraphics");
// Notification only detects hover when moving from outside its borders
// over it, so first go to (0, 0).
$.CGWarpMouseCursorPosition({x:0 , y:0});
mainDisplayWidth = $.CGDisplayPixelsWide($.CGMainDisplayID());
$.CGWarpMouseCursorPosition({x:mainDisplayWidth - 50, y:81});
Application("System Events")
.processes["Notification Center"]
.windows()[0]
.buttons["Reply"]
.click();
Se você deseja executá-lo em um shell (por exemplo, Alfred ainda não suporta JavaScript), você pode usar esta linha que executa o script via osascript
:
echo 'ObjC.import("CoreGraphics"); $.CGWarpMouseCursorPosition({x:0 , y:0}); mainDisplayWidth = $.CGDisplayPixelsWide($.CGMainDisplayID()); $.CGWarpMouseCursorPosition({x:mainDisplayWidth - 50, y:81}); Application("System Events") .processes["Notification Center"] .windows()[0] .buttons["Reply"] .click(); ' | osascript -l JavaScript
Você pode atribuir esse script a um atalho usando qualquer ferramenta de automação. Estou usando Alfred , o FastScripts também funciona.
Você terá que permitir a ferramenta de automação usada para controlar o seu Mac , caso contrário, o mouse se moverá, mas o script não poderá clicar em 'Responder'. No meu caso, adicionei Alfred lá.