From 8873518961b527a5748470b744f465de7b3ca2f8 Mon Sep 17 00:00:00 2001 From: Brandon-T Date: Thu, 27 Feb 2025 16:00:06 -0500 Subject: [PATCH] [iOS] - Fix Translate Crash on iPad (#27857) * Use phoneWidth for translate onboarding on iPad. * Fix button not working due to status being pending --- .../Brave Translate/BraveTranslateTabHelper.swift | 10 +++++----- .../Browser/BrowserViewController/BVC+Translate.swift | 3 ++- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/ios/brave-ios/Sources/Brave/Frontend/Brave Translate/BraveTranslateTabHelper.swift b/ios/brave-ios/Sources/Brave/Frontend/Brave Translate/BraveTranslateTabHelper.swift index a2ee1120ba14..839b1bf17112 100644 --- a/ios/brave-ios/Sources/Brave/Frontend/Brave Translate/BraveTranslateTabHelper.swift +++ b/ios/brave-ios/Sources/Brave/Frontend/Brave Translate/BraveTranslateTabHelper.swift @@ -209,12 +209,12 @@ class BraveTranslateTabHelper: NSObject { // Cache CSS and JS requests Self.requestCache[request.url] = (data, response) - if isTranslationRequest && canShowToast { - canShowToast = false + if isTranslationRequest { + delegate?.updateTranslateURLBar(tab: tab, state: .active) - Task { @MainActor in - self.delegate?.updateTranslateURLBar(tab: tab, state: .active) - self.delegate?.presentToast(tab: tab, languageInfo: currentLanguageInfo) + if canShowToast { + canShowToast = false + delegate?.presentToast(tab: tab, languageInfo: currentLanguageInfo) } } diff --git a/ios/brave-ios/Sources/Brave/Frontend/Browser/BrowserViewController/BVC+Translate.swift b/ios/brave-ios/Sources/Brave/Frontend/Browser/BrowserViewController/BVC+Translate.swift index cbc53490fa73..0d613aed061d 100644 --- a/ios/brave-ios/Sources/Brave/Frontend/Browser/BrowserViewController/BVC+Translate.swift +++ b/ios/brave-ios/Sources/Brave/Frontend/Browser/BrowserViewController/BVC+Translate.swift @@ -74,10 +74,11 @@ extension BrowserViewController: BraveTranslateScriptHandlerDelegate { completion(false) } ), - autoLayoutConfiguration: .init(preferredWidth: self.view.bounds.width - (32.0 * 2.0)) + autoLayoutConfiguration: .phoneWidth ) popover.arrowDistance = 10.0 + popover.outerMargins = UIEdgeInsets(equalInset: 16.0) popover.previewForOrigin = .init( view: self.topToolbar.locationView.translateButton.then {