Ho provato le seguenti combinazioni di tasti nel tentativo di farlo, senza alcun effetto:
- Comando + Ritorna ... + Spazio
- Opzione + Ritorna ... + Spazio
- Controllo + Ritorno ... + Spazio
- Comando + Maiusc + \ (Il comando "Mostra tutte le schede" sul mio Macbook)
Questo mi porta a credere che sia davvero una svista da parte di Apple.
Kludge: crea un comando Automator per simulare un clic del mouse
Ho usato il codice che ho trovato al link per mettere insieme i seguenti AppleScript:
Tentativo 1: non ha funzionato
Ho eseguito questo codice in un oggetto Applescript avvolto in un servizio di automazione mappato a "Comando + Maiusc + Opzione + Controllo + Spazio", utilizzando i numeri che ottengo premendo "Comando + Ctrl + Maiusc + 4" per ottenere l'indirizzo per l'area ( 600 pixel orizzontali da sinistra, 300 pixel verticali dall'alto), e funzionerebbe nel normale Safari (premendo la combinazione di tasti si farebbe il clic del mouse a quell'indirizzo pixel), ma non ha avuto effetto quando è stato eseguito lo stesso comando chiave nel Modalità "Mostra tutte le schede" in Safari!
on run {input, parameters}
tell application "System Events"
tell process "Safari"
click at {600, 300}
end tell
end tell
return input
end run
Tentativo n. 2: lavorato, ma non fattibile
Ho ottenuto un comando chiave che funzionava con il seguente oggetto Applescript avvolto in un servizio di automazione, ma ci sono voluti 5,125 secondi per completare :(
on run {input, parameters}
set x to 600
set y to 150
do shell script "
/usr/bin/python <<END
import sys
import time
from Quartz.CoreGraphics import *
def mouseEvent(type, posx, posy):
theEvent = CGEventCreateMouseEvent(None, type, (posx,posy), kCGMouseButtonLeft)
CGEventPost(kCGHIDEventTap, theEvent)
def mousemove(posx,posy):
mouseEvent(kCGEventMouseMoved, posx,posy);
def mouseclick(posx,posy):
mouseEvent(kCGEventLeftMouseDown, posx,posy);
mouseEvent(kCGEventLeftMouseUp, posx,posy);
ourEvent = CGEventCreate(None);
currentpos=CGEventGetLocation(ourEvent); # Save current mouse position
mouseclick(" & x & "," & y & ");
mousemove(int(currentpos.x),int(currentpos.y)); # Restore mouse position
END"
return input
end run