I want to hide only the Cancel button of a modally presented SwiftUI PhotosPicker, so I'm using .photosPickerDisabledCapabilities(.selectionActions) with the default selection behavior:
.photosPicker(isPresented: $isPresented, selection: $selection,
maxSelectionCount: 5, matching: .images, photoLibrary: .shared())
.photosPickerDisabledCapabilities(.selectionActions)
Cancel goes away as expected, but Add (the checkmark) stops working. Tapping it does nothing, the picker stays up and isPresented never becomes false. Pulling the sheet down doesn't close it either, so there is no way out of the picker. Without the modifier, Add works.
WWDC23 session 10107 says that without continuous selection only Cancel is hidden and Add stays, so I expected Add to keep working.
Seen on both the simulator (iOS 26.1 and 27.0) and a physical device, with Xcode 26.1.1, with and without preselected items.
Q1. On a modal PhotosPicker, .photosPickerDisabledCapabilities(.selectionActions) hides Cancel, but Add then does nothing and the picker cannot be dismissed, not even by pulling it down. Is this a bug, or am I misusing the API?
Q2. This is about the default modal PhotosPicker with both X and Add shown, without .photosPickerDisabledCapabilities(.selectionActions). With preselected assets, the callback returns the same result whether the user taps Add, taps X, or pulls the sheet down. Are there plans to provide a way to tell them apart?