From 754a8fb01b1e622ca49cfcd10fc3c4c872b2fb2b Mon Sep 17 00:00:00 2001 From: Sad Ellie Date: Sat, 28 Oct 2023 22:52:51 +0300 Subject: [PATCH] Custom tabs --- core/ui/build.gradle.kts | 1 + .../ui/src/main/java/com/sadellie/unitto/core/ui/UIUtils.kt | 6 +++--- gradle/libs.versions.toml | 2 ++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/core/ui/build.gradle.kts b/core/ui/build.gradle.kts index 1e3e65da..5c9b0f1d 100644 --- a/core/ui/build.gradle.kts +++ b/core/ui/build.gradle.kts @@ -37,6 +37,7 @@ dependencies { debugImplementation(libs.androidx.compose.ui.test.manifest) implementation(libs.androidx.navigation.navigation.compose) + implementation(libs.androidx.browser.browser) implementation(project(":core:base")) } diff --git a/core/ui/src/main/java/com/sadellie/unitto/core/ui/UIUtils.kt b/core/ui/src/main/java/com/sadellie/unitto/core/ui/UIUtils.kt index 42ddf9af..3c0130a4 100644 --- a/core/ui/src/main/java/com/sadellie/unitto/core/ui/UIUtils.kt +++ b/core/ui/src/main/java/com/sadellie/unitto/core/ui/UIUtils.kt @@ -20,10 +20,10 @@ package com.sadellie.unitto.core.ui import android.content.ActivityNotFoundException import android.content.Context -import android.content.Intent import android.content.res.Configuration import android.net.Uri import android.widget.Toast +import androidx.browser.customtabs.CustomTabsIntent import androidx.compose.runtime.Composable import androidx.compose.ui.platform.LocalConfiguration import com.sadellie.unitto.core.base.R @@ -33,7 +33,7 @@ import com.sadellie.unitto.core.base.R */ fun openLink(mContext: Context, url: String) { try { - mContext.startActivity(Intent(Intent.ACTION_VIEW).setData(Uri.parse(url))) + CustomTabsIntent.Builder().build().launchUrl(mContext, Uri.parse(url)) } catch (e: ActivityNotFoundException) { showToast(mContext, mContext.getString(R.string.error_label)) } @@ -42,7 +42,7 @@ fun openLink(mContext: Context, url: String) { fun showToast( mContext: Context, text: String, - duration: Int = Toast.LENGTH_SHORT + duration: Int = Toast.LENGTH_SHORT, ) { Toast.makeText(mContext, text, duration).show() } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f41f740c..c0cb633f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -2,6 +2,7 @@ appCode = "28" appName = "Olive Green" +androidxBrowserBrowser = "1.6.0" androidGradlePlugin = "8.1.2" androidxAppCompatAppCompat = "1.6.1" androidxCompose = "1.6.0-alpha08" @@ -32,6 +33,7 @@ orgRobolectricRobolectric = "4.10.3" [libraries] androidx-appcompat-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "androidxAppCompatAppCompat" } +androidx-browser-browser = { group = "androidx.browser", name = "browser", version.ref = "androidxBrowserBrowser" } androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3", version.ref = "androidxComposeMaterial3" } androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended", version.ref = "androidxCompose" } androidx-compose-ui = { group = "androidx.compose.ui", name = "ui", version.ref = "androidxCompose" }