Retain window size when dragging away from an edge, IF the window size was manually changed
When I resize a docked window, that's generally the size I want it to be. And undocking it returns it's size to whatever it was before docking, which might be irrelevant to me. In fact, I often use docking to quickly and easily get a window to a manageable size, and then I would like to undock it. As it is, I can only move it around the edge (which is pretty good).
However, the current behaviour is quite good; any window will remember its size before it was docked to a screen edge, and restore it when un-docked. Resizing the top or bottom of a docked window does not pop the opposite edge away from the screen edge as default Aero does. Plus docked windows can be dragged around the edge without undocking.
I understand that the current behaviour may be a feature that most people prefer - sometimes I do too - but an option to have the remembered window size overwritten when resizing a docked window would be really nice. Perhaps a shift key modifier could swap this behaviour when undocking, with an option to swap the modifier's behaviour too.
Ideally the feature would predict which functionality I wanted, but I have no idea how to do that.. :)
-
James commented
Agreed, I'd love an option to retain docked size when the window is moved -- even if it wasn't resized.
When I use AquaSnap, my brain doesn't consider windows to be "docked" or "pinned". Instead, I consider them moved and resized: moving a window to a hot-area triggers the resizing. (This is just the way my brain works.)
So when I move a window *away* from an edge/corner, I don't consider it "un-docking", I consider it simply moving a window. And because I'm not moving it into another hot-area, my brain doesn't expect the window to be resized again. (But it is: back to the original.)
Honestly, once I've snapped a window into a new position and size, the original size is irrelevant to me. I'd much prefer to keep the new "snapped size" even if I move the window around.
-
Scott commented
In terms of automatic behaviour, perhaps it should use the current size of the docked window if it was resized manually, UNLESS it is docked to any two opposite edges of the screen, then restore its pre-docked size. Perhaps only restore the dimension for those opposite docked borders (e.g top and bottom -> restore height) , and retain the other dimension.