From 34176e894ed0c7b71e87751af4beadee77fa8cfb Mon Sep 17 00:00:00 2001 From: laghee <20972610+laghee@users.noreply.github.com> Date: Thu, 23 Jan 2025 16:04:39 +0100 Subject: [PATCH] Use loadUrl instead of reload, fix extra refresh calls --- .../java/com/duckduckgo/app/browser/BrowserTabFragment.kt | 6 +++--- .../java/com/duckduckgo/app/browser/BrowserTabViewModel.kt | 3 +-- .../java/com/duckduckgo/app/browser/commands/Command.kt | 4 +++- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt b/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt index c9b095efb086..5f72aedd8d85 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt @@ -1360,9 +1360,9 @@ class BrowserTabFragment : renderer.showNewTab() } - private fun onBypassMaliciousWarning() { - refresh() + private fun onBypassMaliciousWarning(url: Uri) { showBrowser() + webView?.loadUrl(url.toString()) } private fun showSSLWarning( @@ -1710,7 +1710,7 @@ class BrowserTabFragment : is Command.WebViewError -> showError(it.errorType, it.url) is Command.ShowWarningMaliciousSite -> showMaliciousWarning(it.url) is Command.EscapeMaliciousSite -> onEscapeMaliciousSite() - is Command.BypassMaliciousSiteWarning -> onBypassMaliciousWarning() + is Command.BypassMaliciousSiteWarning -> onBypassMaliciousWarning(it.url) is Command.SendResponseToJs -> contentScopeScripts.onResponse(it.data) is Command.SendResponseToDuckPlayer -> duckPlayerScripts.onResponse(it.data) is Command.WebShareRequest -> webShareRequest.launch(it.data) diff --git a/app/src/main/java/com/duckduckgo/app/browser/BrowserTabViewModel.kt b/app/src/main/java/com/duckduckgo/app/browser/BrowserTabViewModel.kt index 09eaae7d8d2f..82fc234b3b87 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/BrowserTabViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/BrowserTabViewModel.kt @@ -1847,13 +1847,12 @@ class BrowserTabViewModel @Inject constructor( VisitSite -> { Timber.tag("KateMalicious").d("in VisitSite") - command.postValue(BypassMaliciousSiteWarning) + command.postValue(BypassMaliciousSiteWarning(url)) browserViewState.value = currentBrowserViewState().copy( browserShowing = true, showPrivacyShield = HighlightableButton.Visible(enabled = true), ) addExemptedMaliciousUrlToMemory(url) - onRefreshRequested(false) } } } diff --git a/app/src/main/java/com/duckduckgo/app/browser/commands/Command.kt b/app/src/main/java/com/duckduckgo/app/browser/commands/Command.kt index 9353caceded5..86191c22df2c 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/commands/Command.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/commands/Command.kt @@ -223,7 +223,9 @@ sealed class Command { data object EscapeMaliciousSite : Command() - data object BypassMaliciousSiteWarning : Command() + data class BypassMaliciousSiteWarning( + val url: Uri, + ) : Command() // TODO (cbarreiro) Rename to SendResponseToCSS data class SendResponseToJs(val data: JsCallbackData) : Command()