68fed087-9049-446f-bfc5-3f8.../Sources/WorkerPlugin.swift

39 lines
965 B
Swift
Raw Permalink Normal View History

//
// WorkerPlugin.swift
// Mio Island plugin:
//
// Principal class. Module = WorkerPlugin, Class = WorkerPlugin
// NSPrincipalClass = "WorkerPlugin.WorkerPlugin".
//
import AppKit
import SwiftUI
final class WorkerPlugin: NSObject, MioPlugin {
var id: String { "worker" }
var name: String { "摸鱼侠" }
var icon: String { "fish.fill" }
var version: String { "0.3.0" }
func activate() {
WorkerDebugLog.write("plugin activate")
Task { @MainActor in
WorkerStore.shared.start()
WorkerNotificationCenter.shared.requestAuthorizationIfNeeded()
}
}
func deactivate() {
WorkerDebugLog.write("plugin deactivate")
Task { @MainActor in
WorkerStore.shared.stop()
}
}
func makeView() -> NSView {
let view = NSHostingView(rootView: ExpandedView())
view.autoresizingMask = [.width, .height]
return view
}
}