Use ShareCompat for sending text

pull/1719/head
Alex Baker 3 years ago
parent 47f920e32a
commit db973b2419

@ -19,6 +19,7 @@ import androidx.appcompat.view.ActionMode
import androidx.appcompat.widget.SearchView import androidx.appcompat.widget.SearchView
import androidx.appcompat.widget.Toolbar import androidx.appcompat.widget.Toolbar
import androidx.coordinatorlayout.widget.CoordinatorLayout import androidx.coordinatorlayout.widget.CoordinatorLayout
import androidx.core.app.ShareCompat
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.fragment.app.viewModels import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
@ -688,14 +689,16 @@ class TaskListFragment : Fragment(), OnRefreshListener, Toolbar.OnMenuItemClickL
} }
private fun send(tasks: List<TaskContainer>) { private fun send(tasks: List<TaskContainer>) {
val intent = Intent(Intent.ACTION_SEND)
val output = tasks.joinToString("\n") { t -> Task val output = tasks.joinToString("\n") { t -> Task
"${(if (t.isCompleted) "☑" else "☐").padStart(1 + t.getIndent() * 3, ' ')} ${t.title}" "${(if (t.isCompleted) "☑" else "☐").padStart(1 + t.getIndent() * 3, ' ')} ${t.title}"
} }
intent.putExtra(Intent.EXTRA_SUBJECT, filter.listingTitle) val intent = ShareCompat
intent.putExtra(Intent.EXTRA_TEXT, output) .IntentBuilder(requireContext())
intent.type = "text/plain" .setType("text/plain")
startActivity(Intent.createChooser(intent, null)) .setSubject(filter.listingTitle)
.setText(output)
.createChooserIntent()
startActivity(intent)
finishActionMode() finishActionMode()
} }

Loading…
Cancel
Save