| // Copyright 2014 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| import Cocoa |
| import FlutterMacOS |
| |
| /** |
| The window that is automatically generated when `flutter create --target=macos` |
| on a project. `MainFlutterWindow` uses a FlutterViewController as it's content |
| view controller by default. |
| */ |
| class MainFlutterWindow: NSWindow { |
| override func awakeFromNib() { |
| let windowFrame = self.frame |
| let storyboard = NSStoryboard(name: NSStoryboard.Name("Main"), bundle: Bundle.main) |
| // `flutter create --target=macos` uses this class (`self`) as an entrypoint |
| // for drawing on a surface. The line below intercepts that and uses |
| // the storyboard from `Main.storyboard`. |
| self.contentViewController = storyboard.instantiateController(withIdentifier: "MainViewController") as! NSViewController |
| self.setFrame(windowFrame, display: true) |
| |
| super.awakeFromNib() |
| } |
| } |