summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVal Doroshchuk <valentyn.doroshchuk@qt.io>2018-01-10 16:12:36 +0100
committerVaL Doroshchuk <valentyn.doroshchuk@qt.io>2018-05-08 09:41:16 +0000
commit5096d40486a86ec05dca539bcb82d05c795aab6f (patch)
tree6caac75fe42e1e957537ab2a9e9507828cf4a9bd
parent24664700b3162bb67ff2e28a1de2505fb76c3e0b (diff)
downloadqtmultimedia-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>
-rw-r--r--src/qtmultimediaquicktools/qdeclarativevideooutput.cpp13
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;