Skip to content

Instantly share code, notes, and snippets.

@frzi
Last active April 21, 2022 18:17
Show Gist options
  • Save frzi/54a46ea4f6b2de3a60581f821dd37204 to your computer and use it in GitHub Desktop.
Save frzi/54a46ea4f6b2de3a60581f821dd37204 to your computer and use it in GitHub Desktop.
Creating a blank window on macOS
import Cocoa
final class App {
private static var shared: App?
static func main() {
shared = App()
}
// MARK: -
let window = NSWindow()
private init() {
_ = NSApplication.shared
NSApp.setActivationPolicy(.regular)
NSApp.activate(ignoringOtherApps: true)
let bar = NSMenu()
let barItem = NSMenuItem()
let menu = NSMenu()
let quit = NSMenuItem(title: "Quit", action: #selector(terminate), keyEquivalent: "q")
bar.addItem(barItem)
barItem.submenu = menu
menu.addItem(quit)
NSApp.mainMenu = bar
// Window.
window.setFrame(NSRect(x: 0, y: 0, width: 500, height: 500), display: false)
window.styleMask = NSWindow.StyleMask(rawValue: 0xf)
window.backingType = .buffered
window.center()
window.title = "NSApplication test"
window.makeKeyAndOrderFront(nil)
window.contentView = NSView()
NSApp.run()
}
@objc private func terminate() {
exit(0)
}
}
App.main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment