diff --git a/app/src/main/java/com/github/libretube/ui/activities/OfflinePlayerActivity.kt b/app/src/main/java/com/github/libretube/ui/activities/OfflinePlayerActivity.kt index 253e6a662..cc0693234 100644 --- a/app/src/main/java/com/github/libretube/ui/activities/OfflinePlayerActivity.kt +++ b/app/src/main/java/com/github/libretube/ui/activities/OfflinePlayerActivity.kt @@ -91,8 +91,6 @@ class OfflinePlayerActivity : BaseActivity() { finish() } - PlayerHelper.applyCaptionsStyle(this, playerView.subtitleView) - binding.player.initialize( null, binding.doubleTapOverlay.binding, diff --git a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt index 894f0b111..d18cb97ab 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt @@ -826,8 +826,6 @@ class PlayerFragment : BaseFragment(), OnlinePlayerOptions { } playerBinding.exoProgress.setPlayer(exoPlayer) - - PlayerHelper.applyCaptionsStyle(requireContext(), exoPlayerView.subtitleView) } private fun localizedDate(date: String?): String? { diff --git a/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt b/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt index 0ab60b343..4f2fe027e 100644 --- a/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt +++ b/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt @@ -38,8 +38,10 @@ import com.github.libretube.util.PreferenceHelper import com.google.android.exoplayer2.ExoPlayer import com.google.android.exoplayer2.PlaybackParameters import com.google.android.exoplayer2.Player +import com.google.android.exoplayer2.text.Cue import com.google.android.exoplayer2.trackselection.TrackSelector import com.google.android.exoplayer2.ui.AspectRatioFrameLayout +import com.google.android.exoplayer2.ui.CaptionStyleCompat import com.google.android.exoplayer2.ui.StyledPlayerView import com.google.android.exoplayer2.ui.SubtitleView import com.google.android.exoplayer2.util.RepeatModeUtil @@ -106,7 +108,7 @@ internal class CustomExoPlayerView( initializeGestureProgress() initRewindAndForward() - + applyCaptionsStyle() initializeAdvancedOptions(context) if (!playbackPrefSet) { @@ -115,7 +117,7 @@ internal class CustomExoPlayerView( 1.0f ) PreferenceHelper.getBoolean(PreferenceKeys.SKIP_SILENCE, false).let { - (player as ExoPlayer).skipSilenceEnabled = true + (player as ExoPlayer).skipSilenceEnabled = it } playbackPrefSet = true } @@ -569,6 +571,20 @@ internal class CustomExoPlayerView( } } + /** + * Load the captions style according to the users preferences + */ + fun applyCaptionsStyle() { + val captionStyle = PlayerHelper.getCaptionStyle(context) + subtitleView?.apply { + setApplyEmbeddedFontSizes(false) + setFixedTextSize(Cue.TEXT_SIZE_TYPE_ABSOLUTE, PlayerHelper.captionsTextSize) + if (!PlayerHelper.useSystemCaptionStyle) return + setApplyEmbeddedStyles(captionStyle == CaptionStyleCompat.DEFAULT) + setStyle(captionStyle) + } + } + override fun onSingleTap() { toggleController() } diff --git a/app/src/main/java/com/github/libretube/util/PlayerHelper.kt b/app/src/main/java/com/github/libretube/util/PlayerHelper.kt index f30dbf5f8..5f3315946 100644 --- a/app/src/main/java/com/github/libretube/util/PlayerHelper.kt +++ b/app/src/main/java/com/github/libretube/util/PlayerHelper.kt @@ -16,9 +16,7 @@ import com.github.libretube.api.obj.PipedStream import com.github.libretube.constants.PreferenceKeys import com.github.libretube.enums.AudioQuality import com.github.libretube.enums.PlayerEvent -import com.google.android.exoplayer2.text.Cue import com.google.android.exoplayer2.ui.CaptionStyleCompat -import com.google.android.exoplayer2.ui.SubtitleView import com.google.android.exoplayer2.video.VideoSize import kotlin.math.roundToInt @@ -431,18 +429,4 @@ object PlayerHelper { arrayListOf(rewindAction, playPauseAction, forwardAction) } } - - /** - * Load the captions style according to the users preferences - */ - fun applyCaptionsStyle(context: Context, subtitleView: SubtitleView?) { - val captionStyle = getCaptionStyle(context) - subtitleView?.apply { - setApplyEmbeddedFontSizes(false) - setFixedTextSize(Cue.TEXT_SIZE_TYPE_ABSOLUTE, captionsTextSize) - if (!useSystemCaptionStyle) return - setApplyEmbeddedStyles(captionStyle == CaptionStyleCompat.DEFAULT) - setStyle(captionStyle) - } - } }