From 2b45a46b2c9e2dbd0ddbe31793ae7b78a54580bc Mon Sep 17 00:00:00 2001 From: shantanu1k Date: Fri, 28 Oct 2022 20:00:50 +0530 Subject: [PATCH] Added the EXTRA_SUBJECT in the intent --- .../github/libretube/ui/dialogs/ShareDialog.kt | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/github/libretube/ui/dialogs/ShareDialog.kt b/app/src/main/java/com/github/libretube/ui/dialogs/ShareDialog.kt index ba135be6e..48a943a54 100644 --- a/app/src/main/java/com/github/libretube/ui/dialogs/ShareDialog.kt +++ b/app/src/main/java/com/github/libretube/ui/dialogs/ShareDialog.kt @@ -13,12 +13,14 @@ import com.github.libretube.constants.YOUTUBE_FRONTEND_URL import com.github.libretube.databinding.DialogShareBinding import com.github.libretube.db.DatabaseHolder.Companion.Database import com.github.libretube.extensions.awaitQuery +import com.github.libretube.obj.ShareData import com.github.libretube.util.PreferenceHelper import com.google.android.material.dialog.MaterialAlertDialogBuilder class ShareDialog( private val id: String, private val shareObjectType: Int, + private val shareData: ShareData, private val position: Long? = null ) : DialogFragment() { private var binding: DialogShareBinding? = null @@ -29,7 +31,7 @@ class ShareDialog( getString(R.string.youtube) ) val instanceUrl = getCustomInstanceFrontendUrl() - + val shareableTitle = getShareableTitle(shareData) // add instanceUrl option if custom instance frontend url available if (instanceUrl != "") shareOptions += getString(R.string.instance) @@ -63,6 +65,7 @@ class ShareDialog( intent.apply { action = Intent.ACTION_SEND putExtra(Intent.EXTRA_TEXT, url) + putExtra(Intent.EXTRA_SUBJECT, shareableTitle) type = "text/plain" } context?.startActivity( @@ -104,4 +107,14 @@ class ShareDialog( } return "" } + private fun getShareableTitle(shareData: ShareData): String { + if (shareData.currentChannel != null) { + return shareData.currentChannel + } else if (shareData.currentPlaylist != null) { + return shareData.currentPlaylist + } else if (shareData.currentVideo != null) { + return shareData.currentVideo + } + return "" + } }