An application in an enlarged state is not the same as being maximized. A green plus sign means zooming, which means "appropriate size for this content." In some applications, a visible frame (as Eric D. discusses), but that could be just about everything. Try scaling the Safari window, for example.
Assuming you really want to βmaximize,β not βincrease," then Eric is on the right track, but you can do better. First, you should use a window screen, if any. In addition, you should not animate window resizing during startup (as this may not be convenient at startup).
func applicationDidFinishLaunching(aNotification: NSNotification) { if let screen = window.screen ?? NSScreen.mainScreen() { window.setFrame(screen.visibleFrame, display: true) } }
You might want to use the NSWindowController to manage this, rather than putting it in the application delegate. In this case, you can put this in windowDidLoad . Window controllers are a fairly common tool in AppKit (as opposed to view controllers that are not historically common). A.
If you really want to zoom, check out the NSWindowDelegate windowWillUseStandardFrame(_:defaultFrame:) . Usually you do not call zoom(_:) directly at startup, because it will animate, but any logic that you do in the deletion should be used to calculate your frame. Again, do not forget to adjust your frame to live on the window screen, if it has one, and not the main screen.
Ideally, you really should follow the last frame that the user used, and not make him see the visible frame. This is called frameAutosave in Cocoa if you want to explore this more. A window controller will help you manage this somewhat automatically if you just set the autosave name in Interface Builder. (Although this gets a little more complicated when you need to calculate the frame on first run to get a visible frame, so it won't be fully automatic.)
Think carefully before making your default frame a visible frame anyway. It can be really huge on large monitors (there are still many 30-inch Cinema displays, but even on a 27-inch display it can be pretty overwhelming). This is sometimes fine depending on your application, but I often find it worthwhile to determine the maximum initial size (allowing the user to make it larger).