From: Geoffroy Couprie Date: Thu, 19 Feb 2009 13:14:54 +0000 (+0100) Subject: Win32: go to fullscreen on the same monitor as the vlc window X-Git-Tag: 1.0.0-pre1~575 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=5568c88e76b8f016756ee8349190b96dd94f345b;p=vlc Win32: go to fullscreen on the same monitor as the vlc window Fixes #2517 --- diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c index 9fe3c95705..6dea945a55 100644 --- a/modules/video_output/msw/events.c +++ b/modules/video_output/msw/events.c @@ -1128,15 +1128,6 @@ static WINDOWPLACEMENT getWindowState(HWND hwnd) return window_placement; } -/* Internal wrapper over SetWindowPlacement */ -static void SetWindowState(HWND hwnd, int nShowCmd,WINDOWPLACEMENT window_placement) -{ - window_placement.showCmd = nShowCmd; - SetWindowPlacement( hwnd, &window_placement ); - SetWindowPos( hwnd, 0, 0, 0, 0, 0, - SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER|SWP_FRAMECHANGED); -} - /* Internal wrapper to call vout_ControlWindow for hparent */ static int vaControlParentWindow( vout_thread_t *p_vout, int i_query, va_list args ) @@ -1200,9 +1191,11 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) SWP_NOZORDER|SWP_FRAMECHANGED ); #endif } - - /* Maximize window */ - SetWindowState( hwnd, SW_SHOWMAXIMIZED, window_placement ); + else + { + /* Maximize non embedded window */ + ShowWindow( hwnd, SW_SHOWMAXIMIZED ); + } if( p_vout->p_sys->hparent ) { @@ -1230,9 +1223,6 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) /* Change window style, no borders and no title bar */ SetWindowLong( hwnd, GWL_STYLE, p_vout->p_sys->i_window_style ); - /* Normal window */ - SetWindowState( hwnd, SW_SHOWNORMAL, window_placement ); - if( p_vout->p_sys->hparent ) { RECT rect; @@ -1251,6 +1241,12 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout ) SetForegroundWindow( p_vout->p_sys->hparent ); ShowWindow( hwnd, SW_HIDE ); } + else + { + /* return to normal window for non embedded vout */ + SetWindowPlacement( hwnd, &window_placement ); + ShowWindow( hwnd, SW_SHOWNORMAL ); + } /* Make sure the mouse cursor is displayed */ PostMessage( p_vout->p_sys->hwnd, WM_VLC_SHOW_MOUSE, 0, 0 );