How to change the default behaviour of the fullscreen/maximize button?
Solution 1:
Spectacle has been discontinued. They recommend using Rectangle.
Use spectacle, a free open source app that has a bunch of handy window management shortcuts.
While it doesn't change the default behavior of the green button, it makes it superfluous for me to do so as I can do everything using keyboard shortcuts without using the mouse.
For full screen, press:
cmd + option + F
It also has a bunch of options for 1/2 screen, 1/3 screen, top half, bottom half, etc.
Solution 2:
I found that BetterTouchTool solves this problem nicely (Note: BetterTouchTool is no longer free, the trial expires after 45 days). The Preferences aren't quite intuitive:
- Select "Other" category at the top of the window.
- Make sure that "Global" is selected at the left side.
- Click "Configure New Trigger" button in the bottom part of the window.
- Select "Leftclick Green Window Button" as trigger.
- Select "Zoom Window Below Cursor" as predefined action.
- Enjoy!
BetterTouchTool also allows defining a keyboard shortcut for this action (under "Keyboard"). However, the action will still be "Zoom Window Below Cursor" then - it will zoom whichever window your mouse cursor happens to be on, not the currently active window. So this isn't as helpful as it could be unfortunately.
Solution 3:
You can go to System Preferences -> Dock uncheck "Double-click a window's title bar to minimize" and then, when you double click on the title bar in a window, it will maximize the window without going into full screen mode.
I find it easier than having to hold down the option key and clicking on the green button.
Solution 4:
I tried searching for hidden preference keys from the output of mdfind kMDItemContentType=public.unix-executable -onlyin /System|xargs strings 2>/dev/null|grep -E '^[a-zA-Z0-9.-]{10,80}$'|awk '!a[$0]++'
, but I couldn't find anything.
You can assign a shortcut for the Zoom menu item from System Preferences: