From fd1dfb4f4a07c5047db8074ab5a86691ca6736e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leon=20B=C3=B6ttger?= Date: Fri, 13 Mar 2026 19:09:03 +0100 Subject: [PATCH] Always allow incoming notifications --- NearbyShare/Connection/InboundNearbyConnection.swift | 2 +- NearbyShare/Connection/MirroredNotificationSupport.swift | 6 +++++- QuickDrop/Settings.swift | 5 +++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/NearbyShare/Connection/InboundNearbyConnection.swift b/NearbyShare/Connection/InboundNearbyConnection.swift index 001f110..57f684b 100644 --- a/NearbyShare/Connection/InboundNearbyConnection.swift +++ b/NearbyShare/Connection/InboundNearbyConnection.swift @@ -688,7 +688,7 @@ class InboundNearbyConnection: NearbyConnection { return } - if isFileTransferRestricted() { + if !isMirroredNotificationTransfer && isFileTransferRestricted() { log("[InboundNearbyConnection \(self.id)] File transfer restrictions detected.") delegate?.showPlusScreen() rejectTransfer() diff --git a/NearbyShare/Connection/MirroredNotificationSupport.swift b/NearbyShare/Connection/MirroredNotificationSupport.swift index e12c4a7..a2f8534 100644 --- a/NearbyShare/Connection/MirroredNotificationSupport.swift +++ b/NearbyShare/Connection/MirroredNotificationSupport.swift @@ -131,7 +131,11 @@ final class MirroredNotificationPresenter { if let error = error { log("[MirroredNotificationPresenter] Could not post notification: \(error.localizedDescription)") } else { - log("[MirroredNotificationPresenter] Posted mirrored notification (\(identifier))") + DispatchQueue.main.async { + Settings.sharedInstance.incomingNotificationCount += 1 + let count = Settings.sharedInstance.incomingNotificationCount + log("[MirroredNotificationPresenter] Posted mirrored notification (\(identifier)). Current count: \(count)") + } } } } diff --git a/QuickDrop/Settings.swift b/QuickDrop/Settings.swift index 0d7e91f..2e041be 100644 --- a/QuickDrop/Settings.swift +++ b/QuickDrop/Settings.swift @@ -34,6 +34,10 @@ final class Settings: SharedInstance { var incomingTransmissionCount: Int = UserDefaults.standard.integer(forKey: UserDefaultsKeys.transmissionCount.rawValue) { didSet { UserDefaults.standard.set(incomingTransmissionCount, forKey: UserDefaultsKeys.transmissionCount.rawValue) }} + + + var incomingNotificationCount: Int = UserDefaults.standard.integer(forKey: UserDefaultsKeys.incomingNotificationCount.rawValue) + { didSet { UserDefaults.standard.set(incomingNotificationCount, forKey: UserDefaultsKeys.incomingNotificationCount.rawValue) }} var endpointID: String? = UserDefaults.standard.string(forKey: UserDefaultsKeys.endpointID.rawValue) @@ -69,6 +73,7 @@ final class Settings: SharedInstance { case isEligibleForIap = "isEligibleForIap" case appLaunchedBefore = "ShowedWelcomeScreen" case transmissionCount = "reviewRequestCountKey" + case incomingNotificationCount = "incomingNotificationCount" case automaticallyAcceptFiles = "automaticallyAcceptFiles" case saveFolderBookmark = "saveFolderBookmark" case openFinderAfterReceiving = "openFinderAfterReceiving"