You can force the views to keep a inferred min and max width/height by using AutoLayout, but what if you’re working with several views simultaneously? Wouldn’t it be simpler to have a window min and max width/height? Just add the following in your NSWindowController: override func windowDidLoad() { super.windowDidLoad() …