El siguiente AppleScript moverá todas las ventanas que estén fuera de pantalla a la pantalla principal. Es útil cuando se ha desconectado una pantalla externa, y las ventanas que había abiertas en esa pantalla (o pantallas) son ahora inaccesibles.
Copie y pegue este código en el Script Editor:
-- Example list of processes to ignore: {"xGestures"} or {"xGestures", "OtherApp", ...}
property processesToIgnore : {}
-- Get the size of the Display(s), only useful if there is one display
-- otherwise it will grab the total size of both displays
tell application "Finder"
set _b to bounds of window of desktop
set screen_width to item 3 of _b
set screen_height to item 4 of _b
end tell
tell application "System Events"
set allProcesses to application processes
set _results to ""
repeat with i from 1 to count allProcesses
set doIt to 1
repeat with z from 1 to count processesToIgnore
if process i = process (item z of processesToIgnore) then
set doIt to 0
end if
end repeat
if doIt = 1 then
tell process i
repeat with x from 1 to (count windows)
set winPos to position of window x
set _x to item 1 of winPos
set _y to item 2 of winPos
if (_x < 0 or _y screen_width or _y > screen_height) then
set position of window x to {0, 22}
end if
end repeat
end tell
end if
end repeat
end tell
Sin duda funciona en 10.4, y también puede funcionar en OS 10.3. Se puede encontrar un enlace a la fuente original en esta entrada blog.
Hay que tener la casilla Enable Access for Assistive Devices marcada en Universal Access. La entrada blog mencionada más arriba contiene información sobre como excluir ciertas aplicaciones del script, para usar con programas que ocultan ventanas fuera de pantalla.
Fuente: MacOSXHints
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.