What keyboard shortcuts move, resize, and maximize windows under Mac OS X?
I just checked but the following "Window management" entries are blank for Mac OS X:
- Move the focused window
- Resize the focused window
- Maximize the focused window
Are there really no built in keyboard shortcuts for these in OS X? I do this stuff all the time with GNOME under Linux.
216 Answers
Spectacle hasn't been mentioned yet. "Move and resize your windows with ease." --
It's open source:
Update March 17, 2020
Spectacle author does not maintain the project anymore.
Macos provided an option to move windows left/right. See the answer from @afonsoduarte
10macOS Catalina (10.15) now has commands to:
- tile windows left and right of screen (this enters fullscreen mode with 2 app side by side)
- enter fullscreen mode
- move windows to left and right side of screen
- zoom (maximise window)
You can select them by hovering the green full-screen button in the upper-left corner of a window (press the Option key for more options).
To create shortcuts for these commands you can do the following:
- go to System Preferences > Keyboard > Shortcuts
- select App Shortcuts
- press the + sign to create a new shortcut
- in Menu Title enter the title of the option as it appears when hover the green full-screen button, for example: Move Window to Left Side of Screen
- pick a keyboard shortcut, for example: ⌃⌘←
Not built in, but you can install 3rd party software.
2I haven't tested in other versions, but in OS X 10.9 (Mavericks), you can use the Voice Over Utility to move and resize windows.
- Enable Voice Over in the Accessibility control panel.
- Click "Open Voice Over Uitlity"
- Click "Commanders" in the left panel.
- Select "keyboard"
- Select "enable keyboard commander"
- Add a new commander.
- Specify any keyboard key not already in use.
- Choose the command: Size and Position -> Start Moving Window
- Select with window to be moved
- Hold down the right option key, and press the key selected in 7.
- Move the window with the cursor keys.
The best answer is to create a keyboard shortcut in System Preferences > Keyboard > Shortcuts > App Shortcuts.
Then add Chrome or whichever and in the name exact as it appears enter: Zoom.
This is the critical part...
The shortcut has to include the Shift key. When you want to fully maximize the window using the keyboard and mouse you can do so by holding down the Shift key and clicking the Green Maximize/+ button in the browser toolbar.
I assigned my shortcut to be Command+Shift+Return and it works like a charm.
System Preferences > Keyboard > Shortcuts > App Shortcuts
5Personally, I prefer Size Up - it has a huge array of options for auto resizing with a single keypress including quarter screen, maximise and moving windows between monitors and even Spaces.
Following along with the idea of windowflow - check out it's parent project Optimal Layout. I tried sizeup for a while and was actually trying to find a replacement for it when I found Optimal Layout.
It is by far the best OSX keyboard based window manipulation app I've seen yet! Rocks...
2I've tried the other third party apps here and have found Moom to be the best:
If you consider yourself a "hacker" you may consider Slate. Slate is like Bettertouch or Sizeup on steroids. Here is the github repo.
There is a learning curve but it is very powerful and customizable. There is a great write-up on how to set up and use it.
1With VoiceOver enabled (Command-F5), you can use the move window keyboard shortcut.
- Control-Option-Accent (`) move window with arrow keys (or using Shift-Arrow to move just a bit)
- Shift-Control-Option-Accent (`) displays the Window Resize Options menu
Using the Window Resize Options menu, you can move the window to sections of the screen (e.g., centre screen, top left etc.).
2Install rectangle, it's another open source alternative to spectacle (which is no longer maintained)
brew install --cask rectangleThen press^⌥↩
The application looks like
See the following AppleScript for the popular (and free) Mac OS X keyboard/mouse shortcut program QuickSilver that will get you a keyboard shortcut for the green zoom button. When you install that and use it with Quicksilver, you'll be able to customize your keyboard shortcut.
tell application "System Events" if UI elements enabled then set FrontApplication to (get name of every process whose frontmost is true) as string tell process FrontApplication click button 2 of window 1 --button 2 is the green "zoom" button for all applications --window 1 is always the frontmost window. end tell else tell application "System Preferences" activate set current pane to pane "com.apple.preference.universalaccess" display dialog "UI element scripting is not enabled. Check 'Enable access for assistive devices'" end tell end if
end tellSource:
1I have a utility called BetterSnapTool running on my OSX 10.9.4 MacBook. This is a very nice tool that mimics the behavior on Windows 7 of snapping a window to the top, left, or right sides if you drag a window to one of these sides with your mouse. Within BetterSnapTool there is an "Extras" tab and on this panel is an option for "Move Windows". Here, I've chosen CTL and OPT and now when I depress these keys I can move any window under my mouse cursor. BetterSnapTool is rated 5 stars in the Mac App Store application and costs $1.99.
0Go in/out of Fullscreen on Mac OSX defaults to
Command + Ctrl + F
(Ended up here searching for going to Fullscreen with no luck)
1Some apps auto go to full screen when opening but don't show the maximize options bar e.g. IntelliJ 2020.2, which is annoying)
Also, I didn't have the shortcut visible when hovering on other apps options bar
SizeWell
Features and ease of use are combined in a way that I can't find in any alternative software.
I use it with Mountain Lion.
Downside
SIMBL (required by SizeWell) is not recently updated.
This is kinda far from ideal, but it is possible to manually drag a window using "Mouse Keys":
You can move the cursor to the windows title bar and hold down "5" just like a mouse left click button, and then while holding "5" can use the other numbers to drag it. It's clumsy, but it does work and only involves the keyboard.