Is it possible to use Auto Layout to position a window on the screen?
I’d like to set up constraints to position a window relative to an NSStatusItem. I’d like the window to be centered below the NSStatusItem, but also not be partially offscreen. So, I’d need weak constraints for centering relative to the NSStatusItem and strong constraints for maintaining a minimum distance from the screen edges.
How can I accomplish this?
Auto Layout doesn’t work to position windows. The layout engine works per-window to lay out views within that window.
Luckily, this particular layout problem doesn’t look too difficult to accomplish the old way. Figure the frame of the window below the NSStatusItem assuming it fits. Then check to see if that frame intersects with the screen edge. If it does, nudge it to the left until it doesn’t.