mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 21:33:26 +00:00
Fix visibility of navigation bar when searching the forwarding screen. (#1357)
* Fix visibility of navigation bar when searching the forwarding screen. - Update Introspect and replace deprecated calls with new ones. - Remove obsoleted colours from DesignKit.
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
import SwiftUIIntrospect
|
||||
|
||||
extension View {
|
||||
/// Disable the interactive dismiss while the search is on.
|
||||
@@ -28,6 +29,21 @@ extension View {
|
||||
func dismissSearchOnDisappear() -> some View {
|
||||
modifier(DismissSearchOnDisappear())
|
||||
}
|
||||
|
||||
/// Configures a searchable's underlying search controller.
|
||||
/// - Parameters:
|
||||
/// - hidesNavigationBar: A Boolean indicating whether to hide the navigation bar when searching.
|
||||
/// - showsCancelButton: A Boolean indicating whether the search controller manages the visibility of the search bar’s cancel button.
|
||||
///
|
||||
/// This modifier may be moved into Compound once styles for the various configuration options have been defined.
|
||||
func searchableConfiguration(hidesNavigationBar: Bool = true,
|
||||
showsCancelButton: Bool = true) -> some View {
|
||||
introspect(.navigationStack, on: .iOS(.v16), scope: .ancestor) { navigationController in
|
||||
guard let searchController = navigationController.navigationBar.topItem?.searchController else { return }
|
||||
searchController.hidesNavigationBarDuringPresentation = hidesNavigationBar
|
||||
searchController.automaticallyShowsCancelButton = showsCancelButton
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private struct InteractiveDismissSearchModifier: ViewModifier {
|
||||
|
||||
Reference in New Issue
Block a user