diff -Nru qtmultimedia-opensource-src-5.4.1/debian/changelog qtmultimedia-opensource-src-5.4.1/debian/changelog --- qtmultimedia-opensource-src-5.4.1/debian/changelog 2015-10-02 16:31:14.000000000 +0000 +++ qtmultimedia-opensource-src-5.4.1/debian/changelog 2015-10-06 18:18:13.000000000 +0000 @@ -1,3 +1,9 @@ +qtmultimedia-opensource-src (5.4.1-1ubuntu13) vivid; urgency=medium + + * Addressed QtMultimedia upstream code review comments. + + -- Jim Hodapp Tue, 06 Oct 2015 14:16:52 -0400 + qtmultimedia-opensource-src (5.4.1-1ubuntu12) vivid; urgency=medium * Bumping version number for a no-change build diff -Nru qtmultimedia-opensource-src-5.4.1/debian/patches/add_qdeclarative_playlist.patch qtmultimedia-opensource-src-5.4.1/debian/patches/add_qdeclarative_playlist.patch --- qtmultimedia-opensource-src-5.4.1/debian/patches/add_qdeclarative_playlist.patch 2015-10-02 16:31:14.000000000 +0000 +++ qtmultimedia-opensource-src-5.4.1/debian/patches/add_qdeclarative_playlist.patch 2015-10-06 18:18:13.000000000 +0000 @@ -1424,7 +1424,7 @@ d->q_ptr = this; d->networkPlaylistControl = new QMediaNetworkPlaylistControl(this); -@@ -145,6 +147,37 @@ QMediaObject *QMediaPlaylist::mediaObjec +@@ -145,6 +147,35 @@ QMediaObject *QMediaPlaylist::mediaObjec } /*! @@ -1440,11 +1440,6 @@ + return; + } + -+ newControl->setPlaybackMode(oldControl->playbackMode()); -+ emit newControl->playbackModeChanged(oldControl->playbackMode()); -+ newControl->setCurrentIndex(oldControl->currentIndex()); -+ emit newControl->currentIndexChanged(oldControl->currentIndex()); -+ + const QMediaPlaylistProvider *oldPlaylist = oldControl->playlistProvider(); + QMediaPlaylistProvider *newPlaylist = newControl->playlistProvider(); + @@ -1456,13 +1451,16 @@ + } else { + qWarning() << "Failed to sync control playlists since oldPlaylist or newPlaylist is NULL"; + } ++ ++ newControl->setPlaybackMode(oldControl->playbackMode()); ++ newControl->setCurrentIndex(oldControl->currentIndex()); +} + +/*! \internal If \a mediaObject is null or doesn't have an intrinsic playlist, internal local memory playlist source will be created. -@@ -153,6 +186,8 @@ bool QMediaPlaylist::setMediaObject(QMed +@@ -153,6 +184,8 @@ bool QMediaPlaylist::setMediaObject(QMed { Q_D(QMediaPlaylist); @@ -1471,7 +1469,7 @@ if (mediaObject && mediaObject == d->mediaObject) return true; -@@ -170,6 +205,9 @@ bool QMediaPlaylist::setMediaObject(QMed +@@ -170,6 +203,9 @@ bool QMediaPlaylist::setMediaObject(QMed if (d->control != newControl) { int oldSize = 0; if (d->control) { @@ -1481,18 +1479,16 @@ QMediaPlaylistProvider *playlist = d->control->playlistProvider(); oldSize = playlist->mediaCount(); disconnect(playlist, SIGNAL(loadFailed(QMediaPlaylist::Error,QString)), -@@ -214,8 +252,10 @@ bool QMediaPlaylist::setMediaObject(QMed +@@ -214,9 +250,6 @@ bool QMediaPlaylist::setMediaObject(QMed connect(d->control, SIGNAL(currentMediaChanged(QMediaContent)), this, SIGNAL(currentMediaChanged(QMediaContent))); - if (oldSize) -+ if (oldSize) { -+ emit mediaAboutToBeRemoved(0, oldSize-1); - emit mediaRemoved(0, oldSize-1); -+ } - +- emit mediaRemoved(0, oldSize-1); +- if (playlist->mediaCount()) { emit mediaAboutToBeInserted(0,playlist->mediaCount()-1); + emit mediaInserted(0,playlist->mediaCount()-1); Index: qtmultimedia-opensource-src-5.4.1/src/imports/multimedia/multimedia.pro =================================================================== --- qtmultimedia-opensource-src-5.4.1.orig/src/imports/multimedia/multimedia.pro @@ -1525,11 +1521,12 @@ class QMediaPlaylistProvider; class QMediaPlaylistPrivate; -@@ -122,6 +123,7 @@ Q_SIGNALS: - void loadFailed(); - - protected: +@@ -128,6 +129,8 @@ protected: + private: + Q_DECLARE_PRIVATE(QMediaPlaylist) + Q_PRIVATE_SLOT(d_func(), void _q_loadFailed(QMediaPlaylist::Error, const QString &)) ++ + void syncControls(QMediaPlaylistControl *oldControl, QMediaPlaylistControl *newControl); - bool setMediaObject(QMediaObject *object); - QMediaPlaylistPrivate *d_ptr; + }; + QT_END_NAMESPACE