summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--taler-kotlin-android/src/main/java/net/taler/common/AndroidUtils.kt2
-rw-r--r--wallet/src/main/java/net/taler/wallet/Utils.kt6
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt2
-rw-r--r--wallet/src/main/java/net/taler/wallet/withdraw/manual/ManualWithdrawSuccessFragment.kt2
4 files changed, 7 insertions, 5 deletions
diff --git a/taler-kotlin-android/src/main/java/net/taler/common/AndroidUtils.kt b/taler-kotlin-android/src/main/java/net/taler/common/AndroidUtils.kt
index c6d34e9..066184c 100644
--- a/taler-kotlin-android/src/main/java/net/taler/common/AndroidUtils.kt
+++ b/taler-kotlin-android/src/main/java/net/taler/common/AndroidUtils.kt
@@ -112,7 +112,7 @@ fun Fragment.showError(@StringRes mainId: Int, detailText: String = "") {
showError(getString(mainId), detailText)
}
-fun Fragment.startActivitySafe(intent: Intent) {
+fun Context.startActivitySafe(intent: Intent) {
try {
startActivity(intent)
} catch (e: ActivityNotFoundException) {
diff --git a/wallet/src/main/java/net/taler/wallet/Utils.kt b/wallet/src/main/java/net/taler/wallet/Utils.kt
index 6b66368..ed1899f 100644
--- a/wallet/src/main/java/net/taler/wallet/Utils.kt
+++ b/wallet/src/main/java/net/taler/wallet/Utils.kt
@@ -33,6 +33,7 @@ import androidx.browser.customtabs.CustomTabsIntent
import androidx.core.content.getSystemService
import net.taler.common.Amount
import net.taler.common.AmountParserException
+import net.taler.common.startActivitySafe
import net.taler.wallet.backend.TalerErrorCode.WALLET_WITHDRAWAL_KYC_REQUIRED
import net.taler.wallet.backend.TalerErrorInfo
import net.taler.wallet.transactions.Transaction
@@ -113,6 +114,7 @@ fun <T> Transaction.handleKyc(notRequired: () -> T, required: (TalerErrorInfo) -
fun launchInAppBrowser(context: Context, url: String) {
val builder = CustomTabsIntent.Builder()
- val intent = builder.build()
- intent.launchUrl(context, Uri.parse(url))
+ val intent = builder.build().intent
+ intent.data = Uri.parse(url)
+ context.startActivitySafe(intent)
} \ No newline at end of file
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
index 94b9774..ed42066 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
@@ -86,7 +86,7 @@ abstract class TransactionDetailFragment : Fragment() {
val i = Intent().apply {
data = Uri.parse(info.fulfillmentUrl)
}
- orderSummaryView.setOnClickListener { startActivitySafe(i) }
+ orderSummaryView.setOnClickListener { requireContext().startActivitySafe(i) }
}
orderIdView.text = getString(R.string.transaction_order_id, info.orderId)
}
diff --git a/wallet/src/main/java/net/taler/wallet/withdraw/manual/ManualWithdrawSuccessFragment.kt b/wallet/src/main/java/net/taler/wallet/withdraw/manual/ManualWithdrawSuccessFragment.kt
index 787a0b0..3102123 100644
--- a/wallet/src/main/java/net/taler/wallet/withdraw/manual/ManualWithdrawSuccessFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/withdraw/manual/ManualWithdrawSuccessFragment.kt
@@ -46,7 +46,7 @@ class ManualWithdrawSuccessFragment : Fragment() {
// TODO test if this works with an actual payto:// handling app
val componentName = intent.resolveActivity(requireContext().packageManager)
val onBankAppClick = if (componentName == null) null else {
- { startActivitySafe(intent) }
+ { requireContext().startActivitySafe(intent) }
}
val tid = status.transactionId
val onCancelClick = if (tid == null) null else {