summaryrefslogtreecommitdiff
path: root/taler-kotlin-android/src/main/java/net/taler/common
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2024-03-13 09:09:44 -0600
committerTorsten Grote <t@grobox.de>2024-03-13 16:48:39 -0300
commit3deed262dad10990a68f275f886c36946b43cd4e (patch)
tree3af093e955d2fac6d0a077d4666467633dd21e89 /taler-kotlin-android/src/main/java/net/taler/common
parent1ee82ca8a03886fc5b466d294b4927406cee8d9d (diff)
downloadtaler-android-3deed262dad10990a68f275f886c36946b43cd4e.tar.gz
taler-android-3deed262dad10990a68f275f886c36946b43cd4e.tar.bz2
taler-android-3deed262dad10990a68f275f886c36946b43cd4e.zip
[wallet] Make payto:// URIs shareable
bug 0008534
Diffstat (limited to 'taler-kotlin-android/src/main/java/net/taler/common')
-rw-r--r--taler-kotlin-android/src/main/java/net/taler/common/AndroidUtils.kt18
1 files changed, 18 insertions, 0 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 066184c..8f3e5d5 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
@@ -23,6 +23,7 @@ import android.content.Context.CONNECTIVITY_SERVICE
import android.content.Intent
import android.net.ConnectivityManager
import android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET
+import android.net.Uri
import android.os.Build.VERSION.SDK_INT
import android.os.Looper
import android.text.format.DateUtils.DAY_IN_MILLIS
@@ -120,6 +121,23 @@ fun Context.startActivitySafe(intent: Intent) {
}
}
+fun Context.openUri(uri: String, title: String) {
+ val intent = Intent(Intent.ACTION_VIEW).apply {
+ data = Uri.parse(uri)
+ }
+
+ startActivitySafe(Intent.createChooser(intent, title))
+}
+
+fun Context.shareText(text: String) {
+ val intent = Intent(Intent.ACTION_SEND).apply {
+ putExtra(Intent.EXTRA_TEXT, text)
+ type = "text/plain"
+ }
+
+ startActivitySafe(Intent.createChooser(intent, null))
+}
+
fun Fragment.navigate(directions: NavDirections) = findNavController().navigate(directions)
fun Long.toRelativeTime(context: Context): CharSequence {