From e895e7a68e52f147eb265d8110ebbcef03e0a656 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leon=20B=C3=B6ttger?= Date: Sat, 14 Mar 2026 11:36:44 +0100 Subject: [PATCH] Better device name fallback --- NearbyShare/Connection/InboundNearbyConnection.swift | 5 ++++- QuickDrop/View/Toast/QuickDropToastView.swift | 2 +- QuickDrop/ViewModel/ReceiveModel.swift | 10 +++++----- QuickDropiOS/View/ContentView.swift | 2 +- ShareExtension/ShareViewController.swift | 2 +- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/NearbyShare/Connection/InboundNearbyConnection.swift b/NearbyShare/Connection/InboundNearbyConnection.swift index aef5603..1109af5 100644 --- a/NearbyShare/Connection/InboundNearbyConnection.swift +++ b/NearbyShare/Connection/InboundNearbyConnection.swift @@ -318,8 +318,11 @@ class InboundNearbyConnection: NearbyConnection { guard case .connectionRequest = frame.v1.type else { throw NearbyError.protocolError("Unexpected frame type \(frame.v1.type)") } let endpointInfo = EndpointInfo(data: frame.v1.connectionRequest.endpointInfo) + let fallbackDeviceName = "AndroidDevice".localized() + let resolvedDeviceName = endpointInfo?.name?.trimmingCharacters(in: .whitespacesAndNewlines) + let deviceName = (resolvedDeviceName?.isEmpty == false) ? resolvedDeviceName : fallbackDeviceName - remoteDeviceInfo = RemoteDeviceInfo(name: endpointInfo?.name, type: endpointInfo?.deviceType) + remoteDeviceInfo = RemoteDeviceInfo(name: deviceName, type: endpointInfo?.deviceType) currentState = .receivedConnectionRequest } diff --git a/QuickDrop/View/Toast/QuickDropToastView.swift b/QuickDrop/View/Toast/QuickDropToastView.swift index 6c48bcd..e1b329a 100644 --- a/QuickDrop/View/Toast/QuickDropToastView.swift +++ b/QuickDrop/View/Toast/QuickDropToastView.swift @@ -60,7 +60,7 @@ struct QuickDropToastView: View { let subHeaderSize = 21.0 let closeButtonVisible = isHovering && actions != nil - let deviceName = receiveModel.activeDeviceName ?? "UnknownDevice".localized() + let deviceName = receiveModel.activeDeviceName ?? "AndroidDevice".localized() ZStack(alignment: .topTrailing) { HStack(alignment: .center, spacing: 12) { diff --git a/QuickDrop/ViewModel/ReceiveModel.swift b/QuickDrop/ViewModel/ReceiveModel.swift index c6c4c45..024493a 100644 --- a/QuickDrop/ViewModel/ReceiveModel.swift +++ b/QuickDrop/ViewModel/ReceiveModel.swift @@ -69,7 +69,7 @@ class ReceiveModel: ObservableObject, InboundAppDelegate { AudioManager.playIncomingFileSound() #endif - let mainMessage = transfer.getDescription(deviceName: device.name ?? "UnknownDevice".localized()) + let mainMessage = transfer.getDescription(deviceName: device.name ?? "AndroidDevice".localized()) let pinCodeMessage = transfer.getPinCodeMessage() let transferID = transfer.id @@ -87,7 +87,7 @@ class ReceiveModel: ObservableObject, InboundAppDelegate { self.progress = nil self.consentState = nil let senderName = device.name?.trimmingCharacters(in: .whitespacesAndNewlines) - let resolvedSenderName = (senderName?.isEmpty == false) ? senderName! : "UnknownDevice".localized() + let resolvedSenderName = (senderName?.isEmpty == false) ? senderName! : "AndroidDevice".localized() self.activeDeviceName = resolvedSenderName let alert = NSAlert() @@ -108,7 +108,7 @@ class ReceiveModel: ObservableObject, InboundAppDelegate { self.toastActions = nil self.progress = nil - self.activeDeviceName = device.name ?? "UnknownDevice".localized() + self.activeDeviceName = device.name ?? "AndroidDevice".localized() self.consentState = ConsentToastState( transferID: transferID, pinCodeMessage: pinCodeMessage, @@ -155,7 +155,7 @@ class ReceiveModel: ObservableObject, InboundAppDelegate { func obtainedUserConsentAutomatically(transfer: TransferMetadata, device: RemoteDeviceInfo) { - let mainMessage = transfer.getDescription(deviceName: device.name ?? "UnknownDevice".localized()) + let mainMessage = transfer.getDescription(deviceName: device.name ?? "AndroidDevice".localized()) #if os(macOS) @@ -164,7 +164,7 @@ class ReceiveModel: ObservableObject, InboundAppDelegate { DispatchQueue.main.async { self.toastActions = nil self.progress = nil - self.activeDeviceName = device.name ?? "UnknownDevice".localized() + self.activeDeviceName = device.name ?? "AndroidDevice".localized() self.consentState = nil self.showQuickDropToast(for: transfer.id) } diff --git a/QuickDropiOS/View/ContentView.swift b/QuickDropiOS/View/ContentView.swift index d658a3d..f1377a4 100644 --- a/QuickDropiOS/View/ContentView.swift +++ b/QuickDropiOS/View/ContentView.swift @@ -269,7 +269,7 @@ struct DeviceButtonLabel: View { var body: some View { HStack(spacing: 12) { - let name = device.name ?? "UnknownDevice".localized() + let name = device.name ?? "AndroidDevice".localized() ZStack { Circle() diff --git a/ShareExtension/ShareViewController.swift b/ShareExtension/ShareViewController.swift index 3a565be..855b954 100644 --- a/ShareExtension/ShareViewController.swift +++ b/ShareExtension/ShareViewController.swift @@ -401,7 +401,7 @@ extension ShareViewController: NSCollectionViewDataSource { return name } - return "UnknownDevice".localized() + return "AndroidDevice".localized() } }