diff options
author | Val Doroshchuk <valentyn.doroshchuk@qt.io> | 2018-01-10 16:12:36 +0100 |
---|---|---|
committer | VaL Doroshchuk <valentyn.doroshchuk@qt.io> | 2018-05-08 09:41:16 +0000 |
commit | 5096d40486a86ec05dca539bcb82d05c795aab6f (patch) | |
tree | 6caac75fe42e1e957537ab2a9e9507828cf4a9bd /src/qtmultimediaquicktools | |
parent | 24664700b3162bb67ff2e28a1de2505fb76c3e0b (diff) | |
download | qtmultimedia-5096d40486a86ec05dca539bcb82d05c795aab6f.tar.gz |
Set geometry for recreated video renderer backend
If video renderer backend has been recreated, then it needs to update its
geometry. Which previously didn't happen and as a result no content was shown.
The geometry is now updated from within the video node.
Task-number: QTBUG-54680
Change-Id: Iadbf324f4734c9ac6c487eaedd014629ca330599
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
Diffstat (limited to 'src/qtmultimediaquicktools')
-rw-r--r-- | src/qtmultimediaquicktools/qdeclarativevideooutput.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp b/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp index 4fc768438..3c6a6f9c5 100644 --- a/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp +++ b/src/qtmultimediaquicktools/qdeclarativevideooutput.cpp @@ -263,17 +263,16 @@ bool QDeclarativeVideoOutput::createBackend(QMediaService *service) backendAvailable = true; } - if (!backendAvailable) { - qWarning() << Q_FUNC_INFO << "Media service has neither renderer nor window control available."; - m_backend.reset(); - } else if (!m_geometryDirty) { - m_backend->updateGeometry(); - } + if (backendAvailable) { + // Since new backend has been created needs to update its geometry. + m_geometryDirty = true; - if (m_backend) { m_backend->clearFilters(); for (int i = 0; i < m_filters.count(); ++i) m_backend->appendFilter(m_filters[i]); + } else { + qWarning() << Q_FUNC_INFO << "Media service has neither renderer nor window control available."; + m_backend.reset(); } return backendAvailable; |