diff --git a/firefox-ios/Client/Frontend/Browser/BrowserViewController/Extensions/BrowserViewController+FindInPage.swift b/firefox-ios/Client/Frontend/Browser/BrowserViewController/Extensions/BrowserViewController+FindInPage.swift index 853e8d49422f..dea9c6c185cd 100644 --- a/firefox-ios/Client/Frontend/Browser/BrowserViewController/Extensions/BrowserViewController+FindInPage.swift +++ b/firefox-ios/Client/Frontend/Browser/BrowserViewController/Extensions/BrowserViewController+FindInPage.swift @@ -31,6 +31,16 @@ extension BrowserViewController { } } + @available(iOS 16, *) + func restoreFindInPageIfNeeded() { + guard let tab = tabManager.selectedTab, + tab.isPrivate, + tab.isFindInPageMode, + let webView = tab.webView else { return } + + webView.findInteraction?.presentFindNavigator(showingReplace: false) + } + // Used only on iOS 15 private func useCustomFindInteraction(isVisible: Bool, tab: Tab? = nil) { if isVisible { diff --git a/firefox-ios/Client/Frontend/Browser/BrowserViewController/Views/BrowserViewController.swift b/firefox-ios/Client/Frontend/Browser/BrowserViewController/Views/BrowserViewController.swift index 856bc44c2f66..193e488b1162 100644 --- a/firefox-ios/Client/Frontend/Browser/BrowserViewController/Views/BrowserViewController.swift +++ b/firefox-ios/Client/Frontend/Browser/BrowserViewController/Views/BrowserViewController.swift @@ -896,6 +896,11 @@ class BrowserViewController: UIViewController, scrollController.showToolbars(animated: false) } + // In some cases (see restoreFindInPageIfNeeded) is necessary to display manually find in page bar + if #available(iOS 16, *) { + restoreFindInPageIfNeeded() + } + navigationHandler?.showTermsOfUse(context: .appBecameActive) browserDidBecomeActive() }