Skip to content

Commit 7ea4927

Browse files
committed
Close current tab if Fire mode unsupported and mode is FIRE
1 parent d7aa7a8 commit 7ea4927

2 files changed

Lines changed: 13 additions & 11 deletions

File tree

app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3995,7 +3995,13 @@ class BrowserTabFragment :
39953995
).findViewById<DuckDuckGoWebView>(R.id.browserWebView)
39963996

39973997
webView?.let {
3998-
webViewModeInitializer.bind(it, browserMode)
3998+
if (webViewModeInitializer.bind(it, browserMode).isFailure) {
3999+
if (browserMode != BrowserMode.REGULAR) {
4000+
logcat(ERROR) { "Attempting to open a FIRE tab while Fire mode is unsupported." }
4001+
this.closeCurrentTab()
4002+
return
4003+
}
4004+
}
39994005

40004006
it.webViewClient = webViewClient
40014007
it.webChromeClient = webChromeClient

browser-mode/browser-mode-impl/src/main/java/com/duckduckgo/browsermode/impl/RealWebViewModeInitializer.kt

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,16 +37,12 @@ class RealWebViewModeInitializer @Inject constructor(
3737
) : WebViewModeInitializer {
3838
override fun bind(webView: WebView, mode: BrowserMode): Result<Unit> {
3939
if (!fireModeAvailability.isAvailable()) {
40-
return if (mode != BrowserMode.REGULAR) {
41-
Result.failure(
42-
IllegalStateException(
43-
"Attempting to bind a WebView profile to " +
44-
"Fire mode when the Fire mode feature is not available.",
45-
),
46-
)
47-
} else {
48-
Result.success(Unit)
49-
}
40+
return Result.failure(
41+
IllegalStateException(
42+
"Attempting to bind a WebView profile to " +
43+
"Fire mode when the Fire mode feature is not available.",
44+
),
45+
)
5046
}
5147
return runCatching {
5248
webViewProfileBinder.bind(webView, mode.profileName)

0 commit comments

Comments
 (0)