From d986272abe0e78aa4fecd2c385f880fd28ec336b Mon Sep 17 00:00:00 2001 From: Bartlomiej Moskal Date: Wed, 16 Nov 2022 14:28:17 +0100 Subject: Android: Fix for QAndroidMediaPlayer isSeekable method isSeekable() method should return correct value. It seem that m_seekable is corretly set in Base class. That is why we shouldn't override isSeekable method in our implementation. Additionally, after commit 0de7ff081f6d75122d2186d399a6f06cd865978e, default m_seekable value was changed to false which is not the correct approach on Android. Value need to be set to true in QAndroidMediaPlayer constructor. It changes if MEDIA_INFO_NOT_SEEKABLE is received. Task-number: QTBUG-103567 Pick-to: 6.4 6.2 Change-Id: I662e12610ea76472bfde408ba8a1dac602b63788 Reviewed-by: Assam Boudjelthia --- src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp | 7 ++----- src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer_p.h | 2 -- 2 files changed, 2 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp b/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp index 1eea0a09f..645e5a742 100644 --- a/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp +++ b/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer.cpp @@ -48,6 +48,8 @@ QAndroidMediaPlayer::QAndroidMediaPlayer(QMediaPlayer *parent) mMediaPlayer(new AndroidMediaPlayer), mState(AndroidMediaPlayer::Uninitialized) { + // Set seekable to True by default. It changes if MEDIA_INFO_NOT_SEEKABLE is received + seekableChanged(true); connect(mMediaPlayer, &AndroidMediaPlayer::bufferingChanged, this, &QAndroidMediaPlayer::onBufferingChanged); connect(mMediaPlayer, &AndroidMediaPlayer::info, this, &QAndroidMediaPlayer::onInfo); @@ -421,11 +423,6 @@ void QAndroidMediaPlayer::stop() mMediaPlayer->stop(); } -bool QAndroidMediaPlayer::isSeekable() const -{ - return true; -} - void QAndroidMediaPlayer::onInfo(qint32 what, qint32 extra) { StateChangeNotifier notifier(this); diff --git a/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer_p.h b/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer_p.h index 08d1a33fc..dd2a3469d 100644 --- a/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer_p.h +++ b/src/plugins/multimedia/android/mediaplayer/qandroidmediaplayer_p.h @@ -61,8 +61,6 @@ public: void pause() override; void stop() override; - bool isSeekable() const override; - int trackCount(TrackType trackType) override; QMediaMetaData trackMetaData(TrackType trackType, int streamNumber) override; int activeTrack(TrackType trackType) override; -- cgit v1.2.3