Skip to content

Commit 20b3145

Browse files
committed
Issue #91: Receive subtitle when link is shared from external app
1 parent 9099904 commit 20b3145

2 files changed

Lines changed: 11 additions & 12 deletions

File tree

app/src/main/java/com/amrdeveloper/linkhub/ui/MainActivity.kt

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.amrdeveloper.linkhub.ui
22

33
import android.content.Intent
4-
import android.os.Build
54
import android.os.Bundle
65
import androidx.activity.enableEdgeToEdge
76
import androidx.appcompat.app.AppCompatActivity
@@ -41,21 +40,20 @@ class MainActivity : AppCompatActivity() {
4140
Intent.ACTION_VIEW -> return
4241
Intent.ACTION_SEND -> {
4342
val sharedLink = intent.getStringExtra(Intent.EXTRA_TEXT)
44-
val bundle = bundleOf("shared_link" to sharedLink)
43+
val sharedLinkSubject = intent.getStringExtra(Intent.EXTRA_SUBJECT) ?: ""
44+
val bundle = bundleOf("shared_link" to sharedLink, "shared_link_subject" to sharedLinkSubject)
4545
findNavHostController(R.id.nav_host_fragment).navigate(R.id.linkFragment, bundle)
4646
return
4747
}
4848

4949
Intent.ACTION_PROCESS_TEXT -> {
50-
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
51-
val sharedLink =
52-
intent.getCharSequenceExtra(Intent.EXTRA_PROCESS_TEXT).toString()
53-
val bundle = bundleOf("shared_link" to sharedLink)
54-
findNavHostController(R.id.nav_host_fragment).navigate(
55-
R.id.linkFragment,
56-
bundle
57-
)
58-
}
50+
val sharedLink =
51+
intent.getCharSequenceExtra(Intent.EXTRA_PROCESS_TEXT).toString()
52+
val bundle = bundleOf("shared_link" to sharedLink)
53+
findNavHostController(R.id.nav_host_fragment).navigate(
54+
R.id.linkFragment,
55+
bundle
56+
)
5957
}
6058

6159
ACTION_CREATE_LINK -> {

app/src/main/java/com/amrdeveloper/linkhub/ui/link/LinkFragment.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,9 @@ class LinkFragment : Fragment() {
3333
)
3434

3535
val sharedLink = arguments?.getString("shared_link")
36+
val sharedLinkSubject = arguments?.getString("shared_link_subject") ?: ""
3637
val isSharedLink = sharedLink != null
37-
val currentLink = if (isSharedLink) Link(title = "", subtitle = "", url = sharedLink)
38+
val currentLink = if (isSharedLink) Link(title = sharedLinkSubject, subtitle = "", url = sharedLink)
3839
else safeArguments.link
3940

4041
setContent {

0 commit comments

Comments
 (0)