Tapping a .searchSuggestions item inside a NavigationStack dismisses the search controller

Since iOS26, I've been running into an issue with using a NavigationStack with .searchSuggestions, and using searchable with

placement: .navigationBarDrawer(displayMode: .always)

With this, the search is activated and search suggestions list is displayed, but tapping on the search suggestions dismisses the whole search control without doing selecting the search suggestion item. This doesn't happen on iPhone, and doesn't happen on iPadOS 18.5 or below. And removing the 'placement' argument also fixes the issue.


NavigationStack {
    List {
       /// ...
    }
    .searchable(
        text: $searchText,
        tokens: $searchTokens,
        isPresented: $isSearchPresented,
        placement: .navigationBarDrawer(displayMode: .always),
        prompt: "Search timestamps"
    ) { token in
        Label(token.title, systemImage: token.systemImage)
    }
    .searchSuggestions {
        ForEach(suggestedTokens) { token in
            Label(token.title, systemImage: token.systemImage)
                .searchCompletion(token)
        }
    }
    .toolbar {
        
        ToolbarItem {
            Button(action: addItem) {
                Label("Add Item", systemImage: "plus")
            }
        }
    }
}

I have a test sample app with this, and created FB22639453

The same problem happens in UIKit as well, when using UISearchController with UINavigationItems' searchController.

This is an issue we're aware of (FB20722357), but we're not aware of any recommended workaround so far. If you find something that helps you avoid the issue, please share it with the community by posting it here.

Thanks for filing a bug report and posting the number here. The specific info you included in your bug report might help our investigation, and you will get notified when it is resolved.

Thank you for reporting,

Richard Yeh  Developer Technical Support

Tapping a .searchSuggestions item inside a NavigationStack dismisses the search controller
 
 
Q