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.

List of all the available options for spectacle to modify the windows

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!

screenshot

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: