diff --git a/app/src/main/java/org/mozilla/fenix/share/ShareController.kt b/app/src/main/java/org/mozilla/fenix/share/ShareController.kt index dc39e314d..a28b8f3a9 100644 --- a/app/src/main/java/org/mozilla/fenix/share/ShareController.kt +++ b/app/src/main/java/org/mozilla/fenix/share/ShareController.kt @@ -7,6 +7,7 @@ package org.mozilla.fenix.share import android.content.Context import android.content.Intent import android.content.Intent.ACTION_SEND +import android.content.Intent.EXTRA_SUBJECT import android.content.Intent.EXTRA_TEXT import android.content.Intent.FLAG_ACTIVITY_NEW_TASK import android.net.Uri @@ -80,6 +81,7 @@ class DefaultShareController( override fun handleShareToApp(app: AppShareOption) { val intent = Intent(ACTION_SEND).apply { putExtra(EXTRA_TEXT, getShareText()) + putExtra(EXTRA_SUBJECT, shareData.map { it.title }.joinToString(", ")) type = "text/plain" flags = FLAG_ACTIVITY_NEW_TASK setClassName(app.packageName, app.activityName) @@ -161,8 +163,8 @@ class DefaultShareController( } @VisibleForTesting - fun getShareText() = shareData.joinToString("\n") { data -> - listOfNotNull(data.url, data.text).joinToString(" ") + fun getShareText() = shareData.joinToString("\n\n") { data -> + listOfNotNull(data.title, data.url).joinToString(" ") } // Navigation between app fragments uses ShareTab as arguments. SendTabUseCases uses TabData. diff --git a/app/src/test/java/org/mozilla/fenix/share/ShareControllerTest.kt b/app/src/test/java/org/mozilla/fenix/share/ShareControllerTest.kt index 6d4cb9d7b..9a261ef09 100644 --- a/app/src/test/java/org/mozilla/fenix/share/ShareControllerTest.kt +++ b/app/src/test/java/org/mozilla/fenix/share/ShareControllerTest.kt @@ -57,7 +57,7 @@ class ShareControllerTest { TabData("title0", "url0"), TabData("title1", "url1") ) - private val textToShare = "${shareData[0].url}\n${shareData[1].url}" + private val textToShare = "${shareData[0].title} ${shareData[0].url}\n\n${shareData[1].title} ${shareData[1].url}" private val sendTabUseCases = mockk(relaxed = true) private val snackbar = mockk(relaxed = true) private val navController = mockk(relaxed = true)