refactor(macos): dedupe UI, pairing, and runtime helpers

This commit is contained in:
Peter Steinberger
2026-03-02 11:32:04 +00:00
parent cd011897d0
commit cf67e374c0
92 changed files with 1769 additions and 1802 deletions

View File

@@ -1,24 +1,13 @@
import Foundation
final class CanvasFileWatcher: @unchecked Sendable {
private let watcher: CoalescingFSEventsWatcher
final class CanvasFileWatcher: @unchecked Sendable, SimpleFileWatcherOwner {
let watcher: SimpleFileWatcher
init(url: URL, onChange: @escaping () -> Void) {
self.watcher = CoalescingFSEventsWatcher(
self.watcher = SimpleFileWatcher(CoalescingFSEventsWatcher(
paths: [url.path],
queueLabel: "ai.openclaw.canvaswatcher",
onChange: onChange)
onChange: onChange))
}
deinit {
self.stop()
}
func start() {
self.watcher.start()
}
func stop() {
self.watcher.stop()
}
}