1 votos

Applescript - el comando activate hace que la aplicación sea "medio activa"

Lo que hice:

Usando este enlace,

Creé el siguiente Applescript:

tell application "System Events"
    click (first button whose subrole is "AXZoomButton") of (first window whose subrole is "AXStandardWindow") of (first process whose frontmost is true)
    set frontApp to (name of first application process whose frontmost is true) as string
    tell application frontApp to activate
end tell

Este código me permite "presionar" el botón verde en la esquina superior izquierda de la ventana.

Ejecuto el código, usando Alfred.

(Mountain Lion 10.8.4, Alfred 2.0.6)

Lo que sucede:

El zoom funciona bien, pero

  1. la ventana ampliada de la aplicación pierde el enfoque.
  2. los tres botones, rojo, amarillo y verde, en la esquina superior izquierda de la ventana se vuelven opacos en gris después de ejecutar el código.
  3. la barra de menú todavía muestra el título de la aplicación, indicando que la aplicación sigue siendo la más importante.

(¿En este sentido, la ventana está "medio activada"?)

Si hago clic en la ventana, esos botones vuelven a la normalidad, mostrando rojo, amarillo y verde.

Lo que quiero:

Quiero mantener el enfoque en la ventana de la aplicación ampliada después de ejecutar el código usando Alfred.

¿Alguien puede ayudarme, por favor?

2voto

Fuzzy Purple Monkey Puntos 702

Mueva el comando activate fuera del bloque tell application "System Events":

tell application "System Events" to tell (process 1 where frontmost is true)
    click (button 1 where subrole is "AXZoomButton") of window 1
end tell
activate application (path to frontmost application as text)

O probablemente simplemente podría eliminar completamente el comando activate.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X