Is there an app that can save dual-display window states and automatically save/restore them when I disconnect/reconnect the dual display? I have a dual-display setup, and I have many open windows on each of my displays. When I disconnect the display and reconnect it, all the windows are positioned on my native display in an unordered fashion.

To avoid having to continually redistribute my open windows among my two displays after disconnecting the external one, I'd like to have two "profiles," one for when the display isn't connected and one for when it is, such that all windows have a state associated to one profile and they are automatically changed back to that state when that profile becomes active.

Does anyone know of an app that can do this?



Note: I'm looking for an alternative to Stay; it didn't work properly for me.
I do use Stay and am happy with it :) 

But I also use another app that I really like called Slate ( https://github.com/jigish/slate ). Slate is open source (and free), and does allow to define things like Stay (profiles: layouts of windows - which I think will fit your needs), but also allow move windows with keys combinations, and many other interesting things... 

I also have dual display setups and managed to get things working fine with Stay. I have 3 setups two in dual display and one without external display and it works just fine, restoring the windows to their positions when I connect a particular profile (I previously configured... I had to create some simple rules). I use Slate for moving windows around with the keyboard... I think it is a good combination :p

Cheers!