From 7566ef681f71d157e93b45f9c198477e7b918b4f Mon Sep 17 00:00:00 2001 From: Alexandru Farcasanu Date: Wed, 15 Apr 2026 10:30:27 +0300 Subject: [PATCH] =?UTF-8?q?FXIOS-13321=20#29001=20=E2=81=83=20[iOS=2026]?= =?UTF-8?q?=20-=20Find=20in=20page=20bar=20has=20a=20weird=20behavior=20in?= =?UTF-8?q?=20private=20mode?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Extensions/BrowserViewController+FindInPage.swift | 10 ++++++++++ .../Views/BrowserViewController.swift | 5 +++++ 2 files changed, 15 insertions(+) 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() }