From 1207ac2af5e676a94b8e204ba18b627455143656 Mon Sep 17 00:00:00 2001 From: jack Date: Wed, 15 Oct 2025 00:11:30 +0200 Subject: [PATCH] Limit PhotosPicker to iOS only to fix CI PhotosPickerItem has SDK availability issues on macOS in CI. Change PhotosPicker from canImport(PhotosUI) to os(iOS) only. macOS users can still import images via file importer (.fileImporter). This is actually cleaner as macOS file picker is more familiar to users. Fixes CI build failures. --- bitchat/Views/ContentView.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bitchat/Views/ContentView.swift b/bitchat/Views/ContentView.swift index e5369d03..dd1635e6 100644 --- a/bitchat/Views/ContentView.swift +++ b/bitchat/Views/ContentView.swift @@ -73,7 +73,7 @@ struct ContentView: View { @State private var recordingTimer: Timer? @State private var recordingStartDate: Date? @State private var showFileImporter = false -#if canImport(PhotosUI) && ((os(iOS) && compiler(>=5.7)) || (os(macOS) && compiler(>=5.7))) +#if os(iOS) @State private var showPhotoPicker = false @State private var selectedPhotoPickerItem: PhotosPickerItem? #endif @@ -210,7 +210,7 @@ struct ContentView: View { FingerprintView(viewModel: viewModel, peerID: peerID) } } -#if canImport(PhotosUI) && ((os(iOS) && compiler(>=5.7)) || (os(macOS) && compiler(>=5.7))) +#if os(iOS) .photosPicker(isPresented: $showPhotoPicker, selection: $selectedPhotoPickerItem, matching: .images) .onChange(of: selectedPhotoPickerItem) { newItem in guard let item = newItem else { return } @@ -229,7 +229,7 @@ struct ContentView: View { } } .confirmationDialog("Attach", isPresented: $showAttachmentActions, titleVisibility: .visible) { -#if canImport(PhotosUI) && ((os(iOS) && compiler(>=5.7)) || (os(macOS) && compiler(>=5.7))) +#if os(iOS) Button("Image") { showAttachmentActions = false DispatchQueue.main.async { showPhotoPicker = true } @@ -1982,7 +1982,7 @@ private extension ContentView { } } -#if canImport(PhotosUI) && ((os(iOS) && compiler(>=5.7)) || (os(macOS) && compiler(>=5.7))) +#if os(iOS) func handlePhotoSelection(_ item: PhotosPickerItem) async { defer { Task { @MainActor in selectedPhotoPickerItem = nil } } do {