Standardize Windows

Summary: Creates two Finder windows with standard positions and view options.
Requires: Accessibility privileges to get the Dock’s size.
Install Location: ~/Library/Scripts/Applications/Finder/
Last Modified: 2019-10-02

Description

This script creates two Finder windows (in column view, with the status bar shown) stacked at the bottom-right of the screen, leaving room for the Dock on the right. The Finder tends to forget which windows are open and whether the status bar is shown. Whenever your windows get messed up, you can just run the script to clean things up.

Installation Instructions · Download in Compiled Format · Download in Text Format

Script

property pWindowWidth : 975
property pWindowHeight : 440
property pWindowChromeHeight : 23
property pDockPadding : 1

on run
    
tell application "Finder"
        
close every window
        
my positionWindow(my makeWindow("/Users/mjt/"), 2)
        
my positionWindow(my makeWindow("/Users/mjt/Downloads/"), 1)
    
end tell
end run

on makeWindow(_path)
    
set _file to POSIX file _path
    
tell application "Finder"
        
set _window to make new Finder window
        
set _container to container _file
        
set _window's target to _container
        
set _window's bounds to {0, 0, pWindowWidth, pWindowHeight}
        
set _window's current view to column view
        
set _window's toolbar visible to true
        
set _window's sidebar width to 160
        
set _window's statusbar visible to true
        
set _window's statusbar visible to false
        
set _window's statusbar visible to true
        
return _window
    
end tell
end makeWindow

on positionWindow(_window, _levelFromBottom)
    
tell application "Finder"
        
set {_left, _top, _right, _bottom} to bounds of desktop's window
        
set _x to _right - pWindowWidth - pDockPadding - (my dockWidth())
        
set _fullWindowHeight to pWindowHeight + pWindowChromeHeight
        
set _y to _bottom - _fullWindowHeight * _levelFromBottom + pWindowChromeHeight
        
if (system attribute "sys2") ≥ 11 then -- In El Capitan, Finder now counts title bar in window size
            
set _fullWindowHeight to _fullWindowHeight - pWindowChromeHeight
            
set _y to _y + (_levelFromBottom - 1) * pWindowChromeHeight
        
end if
        
set _window's position to {_x, _y}
    
end tell
end positionWindow

on dockWidth()
    
tell application "System Events"
        
tell application process "Dock"
            
set {_width, _height} to size of list 1
            
return _width
        
end tell
    
end tell
end dockWidth