From 1607658c30a5d0a2767c5fe39561e9b28cfacfb4 Mon Sep 17 00:00:00 2001 From: arkon Date: Sat, 6 Feb 2021 09:43:33 -0500 Subject: [PATCH] Set clip data when sharing content URIs (closes #4198) --- .../tachiyomi/data/notification/NotificationReceiver.kt | 5 +++-- .../java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt | 6 ++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/notification/NotificationReceiver.kt b/app/src/main/java/eu/kanade/tachiyomi/data/notification/NotificationReceiver.kt index 4960327b91..5dd2edc488 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/notification/NotificationReceiver.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/notification/NotificationReceiver.kt @@ -2,6 +2,7 @@ package eu.kanade.tachiyomi.data.notification import android.app.PendingIntent import android.content.BroadcastReceiver +import android.content.ClipData import android.content.Context import android.content.Intent import android.net.Uri @@ -120,14 +121,13 @@ class NotificationReceiver : BroadcastReceiver() { * @param notificationId id of notification */ private fun shareImage(context: Context, path: String, notificationId: Int) { - // Create intent val intent = Intent(Intent.ACTION_SEND).apply { val uri = File(path).getUriCompat(context) putExtra(Intent.EXTRA_STREAM, uri) + clipData = ClipData.newRawUri(null, uri) type = "image/*" flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_GRANT_READ_URI_PERMISSION } - // Dismiss notification dismissNotification(context, notificationId) // Launch share activity context.startActivity(intent) @@ -143,6 +143,7 @@ class NotificationReceiver : BroadcastReceiver() { private fun shareBackup(context: Context, uri: Uri, notificationId: Int) { val sendIntent = Intent(Intent.ACTION_SEND).apply { putExtra(Intent.EXTRA_STREAM, uri) + clipData = ClipData.newRawUri(null, uri) type = "application/json" flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_GRANT_READ_URI_PERMISSION } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt index 4f80e098dd..3b6b4e2f18 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt @@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.ui.reader import android.annotation.SuppressLint import android.annotation.TargetApi import android.app.ProgressDialog +import android.content.ClipData import android.content.Context import android.content.Intent import android.content.pm.ActivityInfo @@ -595,10 +596,11 @@ class ReaderActivity : BaseRxActivity() val manga = presenter.manga ?: return val chapter = page.chapter.chapter - val stream = file.getUriCompat(this) + val uri = file.getUriCompat(this) val intent = Intent(Intent.ACTION_SEND).apply { putExtra(Intent.EXTRA_TEXT, getString(R.string.share_page_info, manga.title, chapter.name, page.number)) - putExtra(Intent.EXTRA_STREAM, stream) + putExtra(Intent.EXTRA_STREAM, uri) + clipData = ClipData.newRawUri(null, uri) flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_GRANT_READ_URI_PERMISSION type = "image/*" }