PlayerAndroid/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt

67 lines
2.6 KiB
Kotlin
Raw Normal View History

2018-12-06 08:52:57 +00:00
package code.name.monkey.retromusic.dialogs
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
2019-01-28 10:45:51 +00:00
import androidx.core.content.ContextCompat
2018-12-06 08:52:57 +00:00
import code.name.monkey.appthemehelper.ThemeStore
2019-01-28 10:45:51 +00:00
import code.name.monkey.appthemehelper.util.MaterialUtil
2018-12-06 08:52:57 +00:00
import code.name.monkey.retromusic.R
import code.name.monkey.retromusic.model.Song
import code.name.monkey.retromusic.util.MusicUtil
import code.name.monkey.retromusic.views.RoundedBottomSheetDialogFragment
2019-02-17 17:01:35 +00:00
import kotlinx.android.synthetic.main.dialog_file_share.*
2018-12-06 08:52:57 +00:00
class SongShareDialog : RoundedBottomSheetDialogFragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
2019-02-17 17:01:35 +00:00
return inflater.inflate(R.layout.dialog_file_share, container, false)
2018-12-06 08:52:57 +00:00
}
@SuppressLint("StringFormatInvalid")
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val song = arguments!!.getParcelable<Song>("song")!!
2019-01-28 10:45:51 +00:00
dialogTitle.setTextColor(ThemeStore.textColorPrimary(context!!))
2018-12-06 08:52:57 +00:00
2019-02-17 17:01:35 +00:00
audioText.apply {
2019-01-28 10:45:51 +00:00
text = getString(R.string.currently_listening_to_x_by_x, song.title, song.artistName)
setTextColor(ThemeStore.textColorSecondary(context!!))
setOnClickListener {
val currentlyListening = getString(R.string.currently_listening_to_x_by_x, song.title, song.artistName)
activity!!.startActivity(Intent.createChooser(Intent().setAction(Intent.ACTION_SEND)
.putExtra(Intent.EXTRA_TEXT, currentlyListening)
.setType("text/plain"), null))
dismiss()
}
icon = ContextCompat.getDrawable(context, R.drawable.ic_text_fields_black_24dp)
MaterialUtil.setTint(this)
2018-12-06 08:52:57 +00:00
}
2019-02-17 17:01:35 +00:00
audioFile.apply {
2019-01-28 10:45:51 +00:00
setTextColor(ThemeStore.textColorSecondary(context!!))
setOnClickListener {
2019-02-17 17:01:35 +00:00
activity!!.startActivity(Intent.createChooser(MusicUtil.createShareSongFileIntent(song, activity), null))
2019-01-28 10:45:51 +00:00
dismiss()
}
icon = ContextCompat.getDrawable(context, R.drawable.ic_share_white_24dp)
MaterialUtil.setTint(this, false)
}
2019-02-17 17:01:35 +00:00
2018-12-06 08:52:57 +00:00
}
companion object {
fun create(song: Song): SongShareDialog {
val dialog = SongShareDialog()
val args = Bundle()
args.putParcelable("song", song)
dialog.arguments = args
return dialog
}
}
}