mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
Add bottomTextDialog
This commit is contained in:
parent
a00d9712ba
commit
b2f6f37cda
3 changed files with 63 additions and 8 deletions
|
@ -58,12 +58,14 @@ import com.lagradost.cloudstream3.ui.result.ResultFragment.updateUIEvent
|
|||
import com.lagradost.cloudstream3.ui.search.SearchAdapter
|
||||
import com.lagradost.cloudstream3.ui.search.SearchHelper
|
||||
import com.lagradost.cloudstream3.utils.AppUtils.getNameFull
|
||||
import com.lagradost.cloudstream3.utils.AppUtils.html
|
||||
import com.lagradost.cloudstream3.utils.AppUtils.isCastApiAvailable
|
||||
import com.lagradost.cloudstream3.utils.AppUtils.loadCache
|
||||
import com.lagradost.cloudstream3.utils.AppUtils.openBrowser
|
||||
import com.lagradost.cloudstream3.utils.ExtractorLink
|
||||
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showBottomDialog
|
||||
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showBottomDialogInstant
|
||||
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showBottomDialogText
|
||||
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showDialog
|
||||
import com.lagradost.cloudstream3.utils.UIHelper
|
||||
import com.lagradost.cloudstream3.utils.UIHelper.colorFromAttribute
|
||||
|
@ -681,10 +683,10 @@ open class ResultFragmentPhone : FullScreenPlayer() {
|
|||
resultDescription.setTextHtml(d.plotText)
|
||||
resultDescription.setOnClickListener {
|
||||
activity?.let { activity ->
|
||||
activity.showBottomDialogInstant(
|
||||
listOf(d.plotText.asString(activity)),
|
||||
activity.showBottomDialogText(
|
||||
d.titleText.asString(activity),
|
||||
{}, {}
|
||||
d.plotText.asString(activity).html(),
|
||||
{}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -877,12 +879,10 @@ open class ResultFragmentPhone : FullScreenPlayer() {
|
|||
}
|
||||
observe(viewModel.episodeSynopsis) { description ->
|
||||
activity?.let { activity ->
|
||||
activity.showBottomDialogInstant(
|
||||
listOf(description ?: return@observe),
|
||||
activity.showBottomDialogText(
|
||||
activity.getString(R.string.synopsis),
|
||||
{ viewModel.releaseEpisodeSynopsis() },
|
||||
{}
|
||||
)
|
||||
description.html()
|
||||
) { viewModel.releaseEpisodeSynopsis() }
|
||||
}
|
||||
}
|
||||
context?.let { ctx ->
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.lagradost.cloudstream3.utils
|
|||
|
||||
import android.app.Activity
|
||||
import android.app.Dialog
|
||||
import android.text.Spanned
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.widget.AbsListView
|
||||
|
@ -19,6 +20,7 @@ import androidx.core.view.marginRight
|
|||
import androidx.core.view.marginTop
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialog
|
||||
import com.lagradost.cloudstream3.R
|
||||
import com.lagradost.cloudstream3.databinding.BottomTextDialogBinding
|
||||
import com.lagradost.cloudstream3.databinding.BottomSelectionDialogBinding
|
||||
import com.lagradost.cloudstream3.ui.settings.SettingsFragment.Companion.isTvSettings
|
||||
import com.lagradost.cloudstream3.utils.UIHelper.dismissSafe
|
||||
|
@ -363,4 +365,24 @@ object SingleSelectionHelper {
|
|||
dismissCallback
|
||||
)
|
||||
}
|
||||
|
||||
fun Activity.showBottomDialogText(
|
||||
title: String,
|
||||
text: Spanned,
|
||||
dismissCallback: () -> Unit
|
||||
) {
|
||||
val binding = BottomTextDialogBinding.inflate(layoutInflater)
|
||||
val dialog = BottomSheetDialog(this)
|
||||
|
||||
dialog.setContentView(binding.root)
|
||||
|
||||
binding.dialogTitle.text = title
|
||||
binding.dialogText.text = text
|
||||
|
||||
dialog.setOnDismissListener {
|
||||
dismissCallback.invoke()
|
||||
}
|
||||
|
||||
dialog.show()
|
||||
}
|
||||
}
|
||||
|
|
33
app/src/main/res/layout/bottom_text_dialog.xml
Normal file
33
app/src/main/res/layout/bottom_text_dialog.xml
Normal file
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dialog_title"
|
||||
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
|
||||
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
|
||||
android:layout_marginTop="20dp"
|
||||
android:layout_marginBottom="10dp"
|
||||
android:textStyle="bold"
|
||||
android:textSize="20sp"
|
||||
android:textColor="?attr/textColor"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_rowWeight="1"
|
||||
tools:text="Test"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dialog_text"
|
||||
android:textAppearance="?android:attr/textAppearanceListItem"
|
||||
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
|
||||
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
|
||||
android:paddingTop="10dp"
|
||||
android:requiresFadingEdge="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_rowWeight="1" />
|
||||
|
||||
</LinearLayout>
|
Loading…
Add table
Add a link
Reference in a new issue