Uso questi AppleScript:
try
tell application "Finder"
set b to bounds of window of desktop
end tell
try
tell application (path to frontmost application as text)
set bounds of window 1 to {0, 22, (item 3 of b) / 2, item 4 of b}
end tell
on error
tell application "System Events" to tell window 1 of (process 1 where frontmost is true)
set position to {0, 22}
set size to {(item 3 of b) / 2, (item 4 of b) - 22}
end tell
end try
end try
try
tell application "Finder"
set b to bounds of window of desktop
end tell
try
tell application (path to frontmost application as text)
set bounds of window 1 to {((item 3 of b) / 2), 22, item 3 of b, item 4 of b}
end tell
on error
tell application "System Events" to tell window 1 of (process 1 where frontmost is true)
set position to {(item 3 of b) / 2, 22}
set size to {(item 3 of b) / 2, (item 4 of b) - 22}
end tell
end try
end try
Gli script cercano innanzitutto di dire all'applicazione di modificare la proprietà bounds e quindi di dire a System Events di cambiare le proprietà position e size. L'uso di System Events (o dell'API di accessibilità) funziona con più applicazioni, ma può anche apparire un po 'problematico perché la posizione e le dimensioni non vengono cambiate contemporaneamente. Altre applicazioni come Slate usano sempre le API di accessibilità.