Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Matthew Finkel
fenix
Commits
1ee0243e
Commit
1ee0243e
authored
Jan 15, 2020
by
David Walsh
Committed by
Jeff Boek
Jan 22, 2020
Browse files
Fix 4021 - Provide tab title during share
parent
c556e819
Changes
2
Hide whitespace changes
Inline
Side-by-side
app/src/main/java/org/mozilla/fenix/share/ShareController.kt
View file @
1ee0243e
...
...
@@ -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.
...
...
app/src/test/java/org/mozilla/fenix/share/ShareControllerTest.kt
View file @
1ee0243e
...
...
@@ -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
<
SendTabUseCases
>(
relaxed
=
true
)
private
val
snackbar
=
mockk
<
FenixSnackbar
>(
relaxed
=
true
)
private
val
navController
=
mockk
<
NavController
>(
relaxed
=
true
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment