diff --git a/src/domain/UBGraphicsMediaItem.cpp b/src/domain/UBGraphicsMediaItem.cpp index 22f99c51..4bc036af 100644 --- a/src/domain/UBGraphicsMediaItem.cpp +++ b/src/domain/UBGraphicsMediaItem.cpp @@ -121,6 +121,9 @@ UBGraphicsMediaItem::UBGraphicsMediaItem(const QUrl& pMediaFileUrl, QGraphicsIte connect(Delegate(), SIGNAL(showOnDisplayChanged(bool)), this, SLOT(showOnDisplayChanged(bool))); connect(mMediaObject, SIGNAL(videoAvailableChanged(bool)), this, SLOT(hasMediaChanged(bool))); + + // Resize the widget as soon as the video's native size is known (it isn't at this stage) + connect(mVideoItem, SIGNAL(nativeSizeChanged(QSizeF)), this, SLOT(resize(QSizeF))); } diff --git a/src/domain/UBGraphicsMediaItem.h b/src/domain/UBGraphicsMediaItem.h index e83facef..d05c1871 100644 --- a/src/domain/UBGraphicsMediaItem.h +++ b/src/domain/UBGraphicsMediaItem.h @@ -112,8 +112,6 @@ public: virtual void setPos(qreal x, qreal y); virtual void setMatrix(const QMatrix &matrix, bool combine = false); virtual void setTransform(const QTransform &matrix, bool combine = false); - virtual void resize(qreal w, qreal h); - virtual void resize(const QSizeF & pSize); public slots: @@ -123,6 +121,8 @@ public slots: void activeSceneChanged(); void hasMediaChanged(bool hasMedia); void showOnDisplayChanged(bool shown); + virtual void resize(qreal w, qreal h); + virtual void resize(const QSizeF & pSize); protected: