feat: support html in media description (#713)

* support HTML in media description

* parse html in episode overview

* do the same in season view
This commit is contained in:
leekleak 2024-04-10 12:25:22 +03:00 committed by GitHub
parent be9e65e317
commit a743363a87
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 8 additions and 4 deletions

View file

@ -1,5 +1,6 @@
package dev.jdtech.jellyfin.adapters
import android.text.Html.fromHtml
import android.util.TypedValue
import android.view.LayoutInflater
import android.view.View
@ -45,7 +46,7 @@ class EpisodeListAdapter(
binding.root.context.getString(CoreR.string.episode_name_with_end, episode.indexNumber, episode.indexNumberEnd, episode.name)
}
binding.episodeOverview.text = episode.overview
binding.episodeOverview.text = fromHtml(episode.overview, 0)
if (episode.playbackPositionTicks > 0) {
binding.progressBar.layoutParams.width = TypedValue.applyDimension(

View file

@ -2,6 +2,7 @@ package dev.jdtech.jellyfin.fragments
import android.app.DownloadManager
import android.os.Bundle
import android.text.Html.fromHtml
import android.text.format.Formatter
import android.util.TypedValue
import android.view.LayoutInflater
@ -285,7 +286,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() {
}
binding.seriesName.text = episode.seriesName
binding.overview.text = episode.overview
binding.overview.text = fromHtml(episode.overview, 0)
binding.year.text = formatDateTime(episode.premiereDate)
binding.playtime.text = getString(CoreR.string.runtime_minutes, episode.runtimeTicks.div(600000000))
episode.communityRating?.also {

View file

@ -4,6 +4,7 @@ import android.app.DownloadManager
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.text.Html.fromHtml
import android.text.format.Formatter
import android.view.LayoutInflater
import android.view.View
@ -381,7 +382,7 @@ class MovieFragment : Fragment() {
binding.info.sizeGroup.isVisible = size != null
}
binding.info.description.text = item.overview
binding.info.description.text = fromHtml(item.overview, 0)
binding.info.genres.text = genresString
binding.info.genresGroup.isVisible = item.genres.isNotEmpty()
binding.info.director.text = director?.name

View file

@ -3,6 +3,7 @@ package dev.jdtech.jellyfin.fragments
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.text.Html.fromHtml
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
@ -216,7 +217,7 @@ class ShowFragment : Fragment() {
binding.communityRating.isVisible = true
}
binding.info.description.text = item.overview
binding.info.description.text = fromHtml(item.overview, 0)
binding.info.genres.text = genresString
binding.info.genresGroup.isVisible = item.genres.isNotEmpty()
binding.info.director.text = director?.name