[vlc-commits] activex: fix handling of fullscreen mode

Daniel Amm git at videolan.org
Fri May 22 10:21:22 CEST 2015


npapi-vlc | branch: master | Daniel Amm <da2424 at t-online.de> | Thu May 21 21:49:03 2015 +0200| [d5accd8f74afbfb1ce476dc27731a20d1a48b955] | committer: Jean-Baptiste Kempf

activex: fix handling of fullscreen mode

Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

> http://git.videolan.org/gitweb.cgi/npapi-vlc.git/?a=commit;h=d5accd8f74afbfb1ce476dc27731a20d1a48b955
---

 activex/plugin.cpp      |   13 +++++++++++++
 activex/plugin.h        |    2 ++
 activex/vlccontrol2.cpp |    6 +++---
 3 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/activex/plugin.cpp b/activex/plugin.cpp
index 9357a98..96acacc 100644
--- a/activex/plugin.cpp
+++ b/activex/plugin.cpp
@@ -689,6 +689,19 @@ void VLCPlugin::toggleFullscreen()
     _WindowsManager.ToggleFullScreen();
 }
 
+void VLCPlugin::setFullscreen(BOOL yes)
+{
+    if( yes )
+        _WindowsManager.StartFullScreen();
+    else
+        _WindowsManager.EndFullScreen();
+}
+
+BOOL VLCPlugin::getFullscreen()
+{
+    return _WindowsManager.IsFullScreen();
+}
+
 HRESULT VLCPlugin::onInPlaceDeactivate(void)
 {
     if( m_player.mlp().isPlaying() )
diff --git a/activex/plugin.h b/activex/plugin.h
index 441afd5..6364c34 100644
--- a/activex/plugin.h
+++ b/activex/plugin.h
@@ -218,6 +218,8 @@ public:
     RECT getPosRect(void) { return _posRect; };
     inline HWND getInPlaceWindow(void) const { return _inplacewnd; };
     void toggleFullscreen();
+    void setFullscreen(BOOL yes);
+    BOOL getFullscreen();
 
     BOOL isInPlaceActive(void);
 
diff --git a/activex/vlccontrol2.cpp b/activex/vlccontrol2.cpp
index 284228e..0315237 100644
--- a/activex/vlccontrol2.cpp
+++ b/activex/vlccontrol2.cpp
@@ -920,13 +920,13 @@ STDMETHODIMP VLCVideo::get_fullscreen(VARIANT_BOOL* fullscreen)
     if( NULL == fullscreen )
         return E_POINTER;
 
-    *fullscreen = _plug->get_player().get_mp().fullscreen();
+    *fullscreen = _plug->getFullscreen();
     return S_OK;
 }
 
 STDMETHODIMP VLCVideo::put_fullscreen(VARIANT_BOOL fullscreen)
 {
-    _plug->get_player().get_mp().setFullscreen( VARIANT_FALSE != fullscreen );
+    _plug->setFullscreen( VARIANT_FALSE != fullscreen );
     return S_OK;
 }
 
@@ -1133,7 +1133,7 @@ STDMETHODIMP VLCVideo::takeSnapshot(LPPICTUREDISP* picture)
 
 STDMETHODIMP VLCVideo::toggleFullscreen()
 {
-    _plug->get_player().get_mp().toggleFullscreen();
+    _plug->toggleFullscreen();
     return S_OK;
 }
 



More information about the vlc-commits mailing list