Existe um atalho para enviar a janela atualmente ativa para a parte de trás da tela, mantendo-a aberta (para que ela fique "abaixo" de todas as outras janelas abertas)?
Existe um atalho para enviar a janela atualmente ativa para a parte de trás da tela, mantendo-a aberta (para que ela fique "abaixo" de todas as outras janelas abertas)?
Respostas:
Resposta curta: Não , a Apple não fornece uma API que permita alterar o índice de uma janela de aplicativo, exceto trazendo uma janela para a frente (índice 1). Não há soluções elegantes . Mas:
Resposta longa: Sim , você pode usar o AppleScript para mover efetivamente uma janela para o fundo de uma pilha de janelas compatíveis com AppleScript, coletando uma lista de janelas e movendo rapidamente cada uma delas ( exceto a mais frontal) para a frente, deixando a janela escolhida atrás.
Aqui está um exemplo de AppleScript que envia a janela do Finder mais à frente para trás.
tell application "Finder"
set winList to every window whose visible is true
if not winList = {} then
repeat with oWin in (items 1 through -2 of reverse of winList)
set index of oWin to 1
end repeat
end if
end tell
Este script é baseado em uma solução de JMichaelTX discutida no fórum KeyboardMaestro.
A reorganização é incrivelmente rápida, mas no Editor de scripts você pode inspecionar como funciona, deixando "506" na parte inferior e exibindo "502-505" de uma maneira que preserva a ordem deles:
get every window whose visible = true
--> {Finder window id 506, Finder window id 505, Finder window id 504, Finder window id 503, Finder window id 502}
set index of Finder window id 502 to 1
--> 1
set index of Finder window id 503 to 1
--> 1
set index of Finder window id 504 to 1
--> 1
set index of Finder window id 505 to 1
--> 1
Você pode mapear esse AppleScript para um atalho de serviço ou teclado, a) colocando o script em uma ação Executar AppleScript dentro de um serviço Automator ou b) usando um iniciador (Alfred, Keyboard Maestro etc.). Para obter detalhes sobre a atribuição do teclado da Applescript, consulte: Como atribuir um atalho de teclado a um AppleScript que escrevi?
Isso pode satisfazer as necessidades do OP - não está claro a partir da postagem original. Esta solução também pode ser estendida para vários aplicativos compatíveis com AppleScript. No entanto, não estou ciente de uma solução para fazê-lo funcionar efetivamente com uma mistura de janelas com script e não com script, devido ao fato de que no AppleScript as System Events
janelas endereçáveis para aplicativos não com script não possuem um set index
verbo / propriedade. Existe uma ação "AXRaise" para algumas janelas quando dispositivos auxiliares / acessibilidade estão ativados, mas isso também não se aplica a todas as janelas. Existem hacks elaborados que envolvem percorrer cada aplicativo ativo e mostrar / ocultar ou minimizar / restaurar janelas, mas são uma bagunça.
Discussões relacionadas:
Sua pergunta não é muito clara, mas se você quiser um atalho para percorrer todas as janelas do aplicativo ativo no momento, poderá fazer isso com o Command~atalho do teclado.
A ~chave geralmente está localizada à esquerda da 1chave.
Apenas para esclarecer, o que o Command~atalho de teclado faz é percorrer todas as janelas do aplicativo atual em que você está. Por exemplo, se você estiver usando o MS Word e tiver três documentos abertos, ele percorrerá esses três documentos.
No entanto, o Command~atalho do teclado não percorre as guias. Por exemplo, se você tiver o Safari aberto com três janelas e cada janela tiver cinco guias abertas, o uso desse atalho percorrerá as três janelas, e não as guias individuais.
Outra opção que pode alcançar o que você deseja é o CommandMatalho do teclado. No entanto, isso minimiza a janela ativa no momento para o Dock, então eu suspeito que não é isso que você deseja.
Se eu entendi totalmente sua pergunta, por favor, esclareça.