Merge pull request #4 from Ebullioscopic/feature/clipboard

Working Clipboard
This commit is contained in:
Hariharan Mudaliar 2025-07-21 14:30:21 +05:30 • committed by GitHub
commit 36b750070b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 17 additions and 4 deletions

View file

@ -292,15 +292,20 @@ class AppDelegate: NSObject, NSApplicationDelegate {
// Open the notch if it's closed
if viewModel.notchState == .closed {
viewModel.open()
// Wait a bit for the notch to open before toggling clipboard
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) {
self.coordinator.toggleClipboardPopover()
}
} else {
// If notch is already open, toggle immediately
self.coordinator.toggleClipboardPopover()
}
// Start clipboard monitoring if not already running
if !ClipboardManager.shared.isMonitoring {
ClipboardManager.shared.startMonitoring()
}
// Post notification to trigger clipboard popover
NotificationCenter.default.post(name: NSNotification.Name("ToggleClipboardPopover"), object: nil)
}
if !Defaults[.showOnAllDisplays] {

View file

@ -213,4 +213,12 @@ class DynamicIslandViewCoordinator: ObservableObject {
func showEmpty() {
currentView = .home
}
// MARK: - Clipboard Management
@Published var shouldToggleClipboardPopover: Bool = false
func toggleClipboardPopover() {
// Toggle the published property to trigger UI updates
shouldToggleClipboardPopover.toggle()
}
}

View file

@ -138,7 +138,7 @@ struct DynamicIslandHeader: View {
}
.foregroundColor(.gray)
.environmentObject(vm)
.onReceive(NotificationCenter.default.publisher(for: NSNotification.Name("ToggleClipboardPopover"))) { _ in
.onChange(of: coordinator.shouldToggleClipboardPopover) { _ in
// Only toggle if clipboard is enabled
if Defaults[.enableClipboardManager] {
showClipboardPopover.toggle()