qtmobility/plugins/multimedia/wmp/qwmpplayerservice.cpp
changeset 4 90517678cc4f
parent 1 2b40d63a9c3d
child 11 06b8e2af4411
--- a/qtmobility/plugins/multimedia/wmp/qwmpplayerservice.cpp	Fri Apr 16 15:51:22 2010 +0300
+++ b/qtmobility/plugins/multimedia/wmp/qwmpplayerservice.cpp	Mon May 03 13:18:40 2010 +0300
@@ -85,6 +85,8 @@
             reinterpret_cast<void **>(&m_player))) != S_OK) {
         qWarning("failed to create media player control, %x: %s", hr, qwmp_error_string(hr));
     } else {
+        m_events = new QWmpEvents(m_player);
+
         if ((hr = m_player->QueryInterface(
                 __uuidof(IOleObject), reinterpret_cast<void **>(&m_oleObject))) != S_OK) {
             qWarning("No IOleObject interface, %x: %s", hr, qwmp_error_string(hr));
@@ -103,9 +105,13 @@
             IWMPVideoRenderConfig *config = 0;
             if (m_player->QueryInterface(
                     __uuidof(IWMPVideoRenderConfig), reinterpret_cast<void **>(&config)) == S_OK) {
-                if (HINSTANCE evrHwnd = LoadLibrary(L"evr"))
+                if (HINSTANCE evrHwnd = LoadLibrary(L"evr")) {
                     m_evrVideoOverlay = new QEvrVideoOverlay(evrHwnd);
 
+                    connect(m_events, SIGNAL(OpenStateChange(long)),
+                            m_evrVideoOverlay, SLOT(openStateChanged(long)));
+                }
+
                 config->Release();
             }
 
@@ -118,7 +124,6 @@
             }
         }
 
-        m_events = new QWmpEvents(m_player);
         m_metaData = new QWmpMetaData(m_player, m_events);
         m_playlist = new QWmpPlaylistControl(m_player, m_events);
         m_control = new QWmpPlayerControl(m_player, m_events);