npapi-vlc | branch: master | Sergey Radionov <[email protected]> | Mon Aug 1 12:55:16 2011 +0200| [ff51d50f335b0a903c945176991e7a4bf5173374] | committer: Jean-Baptiste Kempf
Win32, Added checking of correct using of fullscreen support Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/npapi-vlc.git/?a=commit;h=ff51d50f335b0a903c945176991e7a4bf5173374 --- npapi/vlc_win32_fullscreen.cpp | 15 ++++++++++++++- 1 files changed, 14 insertions(+), 1 deletions(-) diff --git a/npapi/vlc_win32_fullscreen.cpp b/npapi/vlc_win32_fullscreen.cpp index 93801d6..abad74b 100644 --- a/npapi/vlc_win32_fullscreen.cpp +++ b/npapi/vlc_win32_fullscreen.cpp @@ -844,17 +844,27 @@ void VLCWindowsManager::DestroyWindows() void VLCWindowsManager::LibVlcAttach(libvlc_media_player_t* p_md) { + if(!_HolderWnd) + return;//VLCWindowsManager::CreateWindows was not called + _p_md=p_md; libvlc_media_player_set_hwnd(p_md, _HolderWnd->getHWND()); } void VLCWindowsManager::LibVlcDetach() { + if(_p_md){ + libvlc_media_player_set_hwnd(_p_md, 0); + } + _p_md=0; } void VLCWindowsManager::StartFullScreen() { + if(!_HolderWnd) + return;//VLCWindowsManager::CreateWindows was not called + if(getMD()&&!IsFullScreen()){ if(!_FSWnd){ _FSWnd= VLCFullScreenWnd::CreateFSWindow(this); @@ -871,6 +881,9 @@ void VLCWindowsManager::StartFullScreen() void VLCWindowsManager::EndFullScreen() { + if(!_HolderWnd) + return;//VLCWindowsManager::CreateWindows was not called + if(IsFullScreen()){ SetParent(_HolderWnd->getHWND(), _hWindowedParentWnd); @@ -900,6 +913,6 @@ void VLCWindowsManager::ToggleFullScreen() bool VLCWindowsManager::IsFullScreen() { - return 0!=_FSWnd && GetParent(_HolderWnd->getHWND())==_FSWnd->getHWND(); + return 0!=_FSWnd && 0!=_HolderWnd && GetParent(_HolderWnd->getHWND())==_FSWnd->getHWND(); } _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
