static var shared: AppDelegate {
- // swiftlint:disable:next force_cast
- return NSApplication.shared.delegate as! AppDelegate
+ return NSApplication.shared.delegate as! AppDelegate // swiftlint:disable:this force_cast
}
let appNameForUserAgent: String = "KCD(1.9b36) is not Safari/604.4.7"
private let resourceHistory = ResourceHistoryManager()
// MARK: - Variable
- @IBOutlet var debugMenuItem: NSMenuItem!
- @IBOutlet var billingWindowMenuItem: NSMenuItem!
+ @IBOutlet private var debugMenuItem: NSMenuItem!
+ @IBOutlet private var billingWindowMenuItem: NSMenuItem!
var jsonViewWindowController: JSONViewWindowController? {
var screenShotSaveDirectory: String {
get {
+
return UserDefaults.standard[.screenShotSaveDirectory] ?? ApplicationDirecrories.pictures.path
}
set {
+
UserDefaults.standard[.screenShotSaveDirectory] = newValue
}
}
// MARK: - Function
override func awakeFromNib() {
- if didLoadedMainMenu { return }
+ if didLoadedMainMenu {
+
+ return
+ }
didLoadedMainMenu = true
windowManager.prepair()
- if !UserDefaults.standard[.showsDebugMenu] { debugMenuItem.isHidden = true }
+ if !UserDefaults.standard[.showsDebugMenu] {
+
+ debugMenuItem.isHidden = true
+ }
NotificationCenter.default
.addObserver(forName: .Periodic, object: historyCleanNotifer, queue: nil) { _ in
return windowManager.createNewBrowser()
}
-
- func registerScreenshot(_ image: NSBitmapImageRep, fromOnScreen: NSRect) {
-
- windowManager.registerScreenshot(image, fromOnScreen: fromOnScreen)
- }
-
- @objc func fire(_ timer: Timer) {
-
- updaters.forEach { $0() }
- }
}
// MARK: - IBActions
guard let path = Bundle.main.path(forResource: "RemoveDatabaseFileAndRestart", ofType: "app") else {
- return Logger.shared.log("Can not find RemoveDatabaseFileAndRestart.app")
+ Logger.shared.log("Can not find RemoveDatabaseFileAndRestart.app")
+
+ return
}
let process = Process()
override func validateMenuItem(_ menuItem: NSMenuItem) -> Bool {
- guard let action = menuItem.action else { return false }
+ guard let action = menuItem.action else {
+
+ return false
+ }
switch action {
return true
case #selector(AppDelegate.removeDatabaseFile(_:)):
+
return true
case #selector(openInDeckBuilder(_:)):
+
return true
default:
+
return windowManager.validateMenuItem(menuItem)
}
}
exit(0)
}
- NSUserNotificationCenter.default.delegate = self
- Timer.scheduledTimer(timeInterval: 0.33,
- target: self,
- selector: #selector(AppDelegate.fire(_:)),
- userInfo: nil,
- repeats: true)
+ Timer.scheduledTimer(withTimeInterval: 0.33, repeats: true) { [weak self] _ in
+
+ self?.updaters.forEach { $0() }
+ }
}
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
@available(OSX 10.12.2, *)
extension AppDelegate: NSTouchBarProvider {
- @IBOutlet var mainTouchBar: NSTouchBar? {
+ @IBOutlet private var mainTouchBar: NSTouchBar? {
get { return objectForTouchBar[hash] }
set { objectForTouchBar[hash] = newValue }
var touchBar: NSTouchBar? {
get {
- if windowManager.isMainWindowMostFront { return nil }
- if let _ = mainTouchBar { return mainTouchBar }
+
+ if windowManager.isMainWindowMostFront {
+
+ return nil
+ }
+ if let _ = mainTouchBar {
+
+ return mainTouchBar
+ }
var topLevel: NSArray?
Bundle.main.loadNibNamed(NSNib.Name("MainTouchBar"), owner: self, topLevelObjects: &topLevel)