summaryrefslogtreecommitdiffstats
path: root/src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp
diff options
context:
space:
mode:
authorEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>2010-03-26 10:47:01 (GMT)
committerEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>2010-03-26 10:47:01 (GMT)
commite7eb7bdf63791ed03257f2f23b1f515e4d89e054 (patch)
tree1d580cea9ffbf342a029c73bd2cecc106811ff22 /src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp
parent47472906fd00e0eff820870330d481c4229ee285 (diff)
parent41e9adb44137c8839d0d7e131802de198b0e7168 (diff)
downloadQt-e7eb7bdf63791ed03257f2f23b1f515e4d89e054.zip
Qt-e7eb7bdf63791ed03257f2f23b1f515e4d89e054.tar.gz
Qt-e7eb7bdf63791ed03257f2f23b1f515e4d89e054.tar.bz2
Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.7
Diffstat (limited to 'src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp')
-rw-r--r--src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp b/src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp
index d54d188..a5f143f 100644
--- a/src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp
+++ b/src/plugins/mediaservices/directshow/mediaplayer/directshowplayerservice.cpp
@@ -191,6 +191,8 @@ void DirectShowPlayerService::load(const QMediaContent &media, QIODevice *stream
m_atEnd = false;
m_metaDataControl->updateGraph(0, 0);
+ QCoreApplication::postEvent(this, new QEvent(QEvent::Type(VideoOutputChange)));
+
if (m_resources.isEmpty() && !stream) {
m_pendingTasks = 0;
m_graphStatus = NoMedia;
@@ -464,6 +466,8 @@ void DirectShowPlayerService::doRender(QMutexLocker *locker)
QCoreApplication::postEvent(this, new QEvent(QEvent::Type(Error)));
}
+ QCoreApplication::postEvent(this, new QEvent(QEvent::Type(VideoOutputChange)));
+
m_executedTasks |= Render;
}
}
@@ -1144,6 +1148,9 @@ void DirectShowPlayerService::customEvent(QEvent *event)
QMutexLocker locker(&m_mutex);
m_playerControl->updatePosition(m_position);
+ } else if (event->type() == QEvent::Type(VideoOutputChange)) {
+ if (m_videoWindowControl)
+ m_videoWindowControl->updateNativeSize();
} else {
QMediaService::customEvent(event);
}