I've been using the example from here to create a custom titlebar-less window:
Drawing a custom window on Mac OS X
I've found this is the only way i can create a titlebar-less window in Leopard, Snow Leopard and Lion, other methods don't work right either on Leopard or Lion.
(If i try to invoke a titlebar-less window via normal NSWindow and IB, it won't start up in Leopard anymore)
So far this custom titlebar-less window works great everywhere, but i can't center it, only a hard fixed position in Interface Builder.
It's fairly easy to center a normal NSWindow *window implementation with [window center], but i've found nothing that works on this custom window subclass, a window that isn't created from nib via Interface Builder.
I've tried a few things from NSWindow, but nothing seems to work.
Any Ideas?
Best Answer
This puts it at the literal center of the screen, not taking into account the space occupied by the dock and menu bar. If you want to do that, change
[[window screen] frame]
to[[window screen] visibleFrame]
.