From b05f3967040142474b98e8c800cbaf8dbc7d76a3 Mon Sep 17 00:00:00 2001 From: Bnyro Date: Sun, 29 May 2022 12:33:10 +0200 Subject: [PATCH 1/2] description formatting fix --- .../com/github/libretube/ChannelFragment.kt | 6 ++++-- .../com/github/libretube/PlayerFragment.kt | 19 ++++++++++++++----- app/src/main/res/layout/fragment_channel.xml | 1 + 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/github/libretube/ChannelFragment.kt b/app/src/main/java/com/github/libretube/ChannelFragment.kt index 61789620e..04ad91df5 100644 --- a/app/src/main/java/com/github/libretube/ChannelFragment.kt +++ b/app/src/main/java/com/github/libretube/ChannelFragment.kt @@ -19,6 +19,7 @@ import com.github.libretube.adapters.ChannelAdapter import com.github.libretube.obj.Subscribe import com.google.android.material.button.MaterialButton import com.squareup.picasso.Picasso +import org.chromium.base.ThreadUtils.runOnUiThread import java.io.IOException import retrofit2.HttpException @@ -206,10 +207,11 @@ class ChannelFragment : Fragment() { response.subscriberCount.formatShort() ) val channelDescription = view.findViewById(R.id.channel_description) - if (response.description?.trim() == "") + if (response.description?.trim() == "") { channelDescription.visibility = View.GONE - else + } else { channelDescription.text = response.description?.trim() + } val bannerImage = view.findViewById(R.id.channel_banner) val channelImage = view.findViewById(R.id.channel_image) Picasso.get().load(response.bannerUrl).into(bannerImage) diff --git a/app/src/main/java/com/github/libretube/PlayerFragment.kt b/app/src/main/java/com/github/libretube/PlayerFragment.kt index ed97cc7b6..67592d434 100644 --- a/app/src/main/java/com/github/libretube/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/PlayerFragment.kt @@ -69,6 +69,7 @@ import com.google.android.exoplayer2.util.RepeatModeUtil import com.google.android.material.button.MaterialButton import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.squareup.picasso.Picasso +import org.chromium.base.ThreadUtils.runOnUiThread import java.io.IOException import java.net.URLEncoder import java.util.concurrent.Executors @@ -654,13 +655,21 @@ class PlayerFragment : Fragment() { response.relatedStreams!!, childFragmentManager ) - + val description = response.description!! view.findViewById(R.id.player_description).text = - if (SDK_INT >= Build.VERSION_CODES.N) { - Html.fromHtml(response.description, Html.FROM_HTML_MODE_COMPACT).trim() - } else { - Html.fromHtml(response.description).trim() + // detect whether the description is html formatted + if (description.contains("<") && description.contains(">")) { + if (SDK_INT >= Build.VERSION_CODES.N) { + Html.fromHtml(description, Html.FROM_HTML_MODE_COMPACT) + .trim() + } else { + Html.fromHtml(description).trim() + } } + else { + description + } + view.findViewById(R.id.player_views_info).text = response.views.formatShort() + " views • " + response.uploadDate view.findViewById(R.id.textLike).text = response.likes.formatShort() diff --git a/app/src/main/res/layout/fragment_channel.xml b/app/src/main/res/layout/fragment_channel.xml index 9b418dd5d..92eb19eb4 100644 --- a/app/src/main/res/layout/fragment_channel.xml +++ b/app/src/main/res/layout/fragment_channel.xml @@ -96,6 +96,7 @@ android:layout_marginStart="10dp" android:layout_marginEnd="10dp" android:layout_marginBottom="15dp" + android:autoLink="web" android:text="" /> Date: Sun, 29 May 2022 12:36:37 +0200 Subject: [PATCH 2/2] ktlint --- app/src/main/java/com/github/libretube/PlayerFragment.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/github/libretube/PlayerFragment.kt b/app/src/main/java/com/github/libretube/PlayerFragment.kt index 67592d434..eba1cd921 100644 --- a/app/src/main/java/com/github/libretube/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/PlayerFragment.kt @@ -70,12 +70,12 @@ import com.google.android.material.button.MaterialButton import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.squareup.picasso.Picasso import org.chromium.base.ThreadUtils.runOnUiThread +import org.chromium.net.CronetEngine +import retrofit2.HttpException import java.io.IOException import java.net.URLEncoder import java.util.concurrent.Executors import kotlin.math.abs -import org.chromium.net.CronetEngine -import retrofit2.HttpException var isFullScreen = false @@ -665,8 +665,7 @@ class PlayerFragment : Fragment() { } else { Html.fromHtml(description).trim() } - } - else { + } else { description }