Fix play-pause button in video player.

This commit is contained in:
Nicholas Tinsley 2023-08-17 14:34:01 -04:00
parent 4b6b87d632
commit 2397cb5428
4 changed files with 9 additions and 8 deletions

View file

@ -14,7 +14,7 @@ import androidx.annotation.OptIn
import androidx.appcompat.widget.AppCompatImageButton
import androidx.core.content.ContextCompat
import androidx.media3.common.util.UnstableApi
import androidx.media3.ui.PlayerControlView
import androidx.media3.ui.LegacyPlayerControlView
import androidx.recyclerview.widget.RecyclerView
import com.airbnb.lottie.LottieAnimationView
import com.airbnb.lottie.LottieProperty
@ -35,7 +35,7 @@ class MediaPreviewPlayerControlView @JvmOverloads constructor(
attrs: AttributeSet? = null,
defStyleAttr: Int = 0,
playbackAttrs: AttributeSet? = null
) : PlayerControlView(context, attrs, defStyleAttr, playbackAttrs) {
) : LegacyPlayerControlView(context, attrs, defStyleAttr, playbackAttrs) {
val recyclerView: RecyclerView = findViewById(R.id.media_preview_album_rail)
private val durationBar: LinearLayout = findViewById(R.id.exo_duration_viewgroup)

View file

@ -12,7 +12,7 @@ import androidx.annotation.Nullable;
import androidx.annotation.OptIn;
import androidx.lifecycle.ViewModelProvider;
import androidx.media3.common.util.UnstableApi;
import androidx.media3.ui.PlayerControlView;
import androidx.media3.ui.LegacyPlayerControlView;
import org.signal.core.util.concurrent.LifecycleDisposable;
import org.signal.core.util.logging.Log;
@ -104,7 +104,7 @@ public final class VideoMediaPreviewFragment extends MediaPreviewFragment {
}
private void updateSkipButtonState() {
final PlayerControlView playbackControls = videoView.getControlView();
final LegacyPlayerControlView playbackControls = videoView.getControlView();
if (playbackControls != null) {
boolean shouldShowSkipButtons = videoView.getDuration() > MINIMUM_DURATION_FOR_SKIP_MS;
playbackControls.setShowFastForwardButton(shouldShowSkipButtons);

View file

@ -38,6 +38,7 @@ import androidx.media3.exoplayer.source.ClippingMediaSource;
import androidx.media3.exoplayer.source.DefaultMediaSourceFactory;
import androidx.media3.exoplayer.source.MediaSource;
import androidx.media3.ui.AspectRatioFrameLayout;
import androidx.media3.ui.LegacyPlayerControlView;
import androidx.media3.ui.PlayerControlView;
import androidx.media3.ui.PlayerView;
@ -60,7 +61,7 @@ public class VideoPlayer extends FrameLayout {
private final DefaultMediaSourceFactory mediaSourceFactory;
private ExoPlayer exoPlayer;
private PlayerControlView exoControls;
private LegacyPlayerControlView exoControls;
private Window window;
private PlayerStateCallback playerStateCallback;
private PlayerPositionDiscontinuityCallback playerPositionDiscontinuityCallback;
@ -133,8 +134,8 @@ public class VideoPlayer extends FrameLayout {
};
}
private PlayerControlView createPlayerControls(Context context) {
final PlayerControlView playerControlView = new PlayerControlView(context);
private LegacyPlayerControlView createPlayerControls(Context context) {
final LegacyPlayerControlView playerControlView = new LegacyPlayerControlView(context);
playerControlView.setShowTimeoutMs(-1);
playerControlView.setShowNextButton(false);
playerControlView.setShowPreviousButton(false);
@ -234,7 +235,7 @@ public class VideoPlayer extends FrameLayout {
super.setOnClickListener(l);
}
public @Nullable PlayerControlView getControlView() {
public @Nullable LegacyPlayerControlView getControlView() {
return this.exoControls;
}