Created
January 30, 2013 13:04
-
-
Save krid78/4673164 to your computer and use it in GitHub Desktop.
This Script places All windows within the screen bounds
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- Found at: http://hints.macworld.com/article.php?story=2007102012424539 | |
-- Example list of processes to ignore: {"xGestures"} or {"xGestures", "OtherApp", ...} | |
property processesToIgnore : {"loginwindow", "talagent", "Dock", "SystemUIServer", "SIMBL Agent", "AFSBackgrounder", "NotificationCenter", "iTunesHelper", "PhotoStreamAgent", "com.apple.dock.extra", "WebProcess", "AppleSpell", "com.apple.qtkitserver", "SophosUIServer", "PTPCamera", "Image Capture Extension", "mdworker", "System Events"} | |
-- 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 < 0 or _x > 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 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment