Avoid invalid unset default browser (fixes #6520)

This commit is contained in:
arkon 2022-01-30 10:46:46 -05:00
parent 5cd11ad8c3
commit 7de707c60a

View file

@ -293,7 +293,7 @@ fun Context.openInBrowser(uri: Uri, @ColorInt toolbarColor: Int? = null) {
) )
.build() .build()
// Force default browser so that verified extensions don't re-open Tachiyomi // Force default browser so that verified extensions don't re-open Tachiyomi
intent.intent.setPackage(defaultBrowserPackageName()) defaultBrowserPackageName()?.let { intent.intent.setPackage(it) }
intent.launchUrl(this, uri) intent.launchUrl(this, uri)
} catch (e: Exception) { } catch (e: Exception) {
toast(e.message) toast(e.message)
@ -302,7 +302,9 @@ fun Context.openInBrowser(uri: Uri, @ColorInt toolbarColor: Int? = null) {
fun Context.defaultBrowserPackageName(): String? { fun Context.defaultBrowserPackageName(): String? {
val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse("http://")) val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse("http://"))
return packageManager.resolveActivity(browserIntent, PackageManager.MATCH_DEFAULT_ONLY)?.activityInfo?.packageName return packageManager.resolveActivity(browserIntent, PackageManager.MATCH_DEFAULT_ONLY)
?.activityInfo?.packageName
?.takeIf { it != "android" }
} }
fun Context.createFileInCacheDir(name: String): File { fun Context.createFileInCacheDir(name: String): File {