When I have a giant Thunderbolt monitor plugged into my MacBook, I want windows arranged a certain way. No full-screen apps, some apps are shown on my small laptop screen, other apps are shown on my Thunderbolt display. When I unplug the Thunderbolt display, I would like programs arranged differently, e.g., the browser is a full-screen app. Is there any program that will let me "save" my window state when I have an external monitor plugged in, and save another layout when I don't have any external display, and automatically switch between the two when it detects that external display has been plugged in or unplugged? I'm on Mountain Lion on a MacBook Pro.


3 Answers 3


Slate allows giving windows different default positions depending on the connected displays. See the developer's configuration file for some examples.



by Cordless Dog. It saves window state for each display configuration you might have.

enter image description here

  • 1
    love it, will save me a lot of time faffing about
    – null
    Aug 14, 2013 at 9:54
  • 2
    Stay is a great app, the functionality it offers solves exactly this problem,and it will fire automatically, causing your spaces to jump around when you unlock - it's a bit crazy, but fun and better than having to trigger it yourself every time. The problem is that it doesn't always work (I'm running Mavericks) - some apps aren't supported, and I often find that some windows just don't resize. If it was free I'd recommend it, but as a paid-for app I'd expect reliable performance.
    – Conan
    Mar 4, 2014 at 14:07
  • 2
    It seemed like a good fit. But with 3 external displays it often had problems with the positions and just solved the problem to 50%. So I still had to do a lot of manual work. I just deinstalled it. Oh, and its only 30 day trial! Apr 28, 2017 at 5:25


Move, zoom, and snap windows. Auto-adjust to display setups. And more.


Not the answer you're looking for? Browse other questions tagged .