From 8c9b41e72a2dea564512c31e15f5f72c663fd49c Mon Sep 17 00:00:00 2001 From: pontscho Date: Sun, 5 May 2002 18:46:42 +0000 Subject: window resize bug fixed git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5987 b3059339-0415-0410-9bf9-f77b7e298cf2 --- Gui/interface.c | 6 +++++- Gui/mplayer/play.c | 9 --------- Gui/mplayer/play.h | 1 - Gui/wm/ws.c | 11 ++++++++++- 4 files changed, 15 insertions(+), 12 deletions(-) (limited to 'Gui') diff --git a/Gui/interface.c b/Gui/interface.c index e346450149..60cd8cd5e1 100644 --- a/Gui/interface.c +++ b/Gui/interface.c @@ -98,7 +98,11 @@ void guiGetEvent( int type,char * arg ) break; case guiSetShVideo: { - mplResizeToMovieSize( vo_dwidth,vo_dheight ); + if ( !appMPlayer.subWindow.isFullScreen ) + { + wsResizeWindow( &appMPlayer.subWindow,vo_dwidth,vo_dheight ); + wsMoveWindow( &appMPlayer.subWindow,True,appMPlayer.sub.x,appMPlayer.sub.y ); + } guiIntfStruct.MovieWidth=vo_dwidth; guiIntfStruct.MovieHeight=vo_dwidth; } diff --git a/Gui/mplayer/play.c b/Gui/mplayer/play.c index 673ed5cf8d..402ca81021 100644 --- a/Gui/mplayer/play.c +++ b/Gui/mplayer/play.c @@ -207,15 +207,6 @@ void ChangeSkin( char * name ) btnModify( evFullScreen,!appMPlayer.subWindow.isFullScreen ); } -void mplResizeToMovieSize( unsigned int width,unsigned int height ) -{ - if ( !appMPlayer.subWindow.isFullScreen ) - { - wsResizeWindow( &appMPlayer.subWindow,width,height ); - wsMoveWindow( &appMPlayer.subWindow,True,appMPlayer.sub.x,appMPlayer.sub.y ); - } -} - void mplSetFileName( char * fname ) { if ( !fname ) return; diff --git a/Gui/mplayer/play.h b/Gui/mplayer/play.h index c8f805c134..3fa45a80e0 100644 --- a/Gui/mplayer/play.h +++ b/Gui/mplayer/play.h @@ -15,7 +15,6 @@ extern void mplPause( void ); extern void mplState( void ); extern void mplPrev( void ); extern void mplNext( void ); -extern void mplResizeToMovieSize( unsigned int width,unsigned int height ); extern void mplIncAudioBufDelay( void ); extern void mplDecAudioBufDelay( void ); diff --git a/Gui/wm/ws.c b/Gui/wm/ws.c index d19d7564df..b5b3b631b7 100644 --- a/Gui/wm/ws.c +++ b/Gui/wm/ws.c @@ -361,6 +361,7 @@ void wsCreateWindow( wsTWindow * win,int X,int Y,int wX,int hY,int bW,int cV,uns win->SizeHint.y=win->Y; win->SizeHint.width=win->Width; win->SizeHint.height=win->Height; + if ( D & wsMinSize ) { win->SizeHint.flags|=PMinSize; @@ -373,6 +374,7 @@ void wsCreateWindow( wsTWindow * win,int X,int Y,int wX,int hY,int bW,int cV,uns win->SizeHint.max_width=win->Width; win->SizeHint.max_height=win->Height; } + win->SizeHint.height_inc=1; win->SizeHint.width_inc=1; win->SizeHint.base_width=win->Width; @@ -770,9 +772,12 @@ void wsResizeWindow( wsTWindow * win,int sx, int sy ) win->Width=sx; win->Height=sy; - win->SizeHint.flags=PSize | PWinGravity; + win->SizeHint.flags=PPosition | PSize | PWinGravity | PBaseSize; + win->SizeHint.x=win->X; + win->SizeHint.y=win->Y; win->SizeHint.width=win->Width; win->SizeHint.height=win->Height; +/* if ( win->Property & wsMinSize ) { win->SizeHint.flags|=PMinSize; @@ -785,9 +790,13 @@ void wsResizeWindow( wsTWindow * win,int sx, int sy ) win->SizeHint.max_width=win->Width; win->SizeHint.max_height=win->Height; } +*/ win->SizeHint.win_gravity=StaticGravity; + win->SizeHint.base_width=sx; win->SizeHint.base_height=sy; + if ( !wsIsKDE ) XUnmapWindow( wsDisplay,win->WindowID ); XSetWMNormalHints( wsDisplay,win->WindowID,&win->SizeHint ); XResizeWindow( wsDisplay,win->WindowID,sx,sy ); + XMapRaised( wsDisplay,win->WindowID ); if ( win->ReSize ) win->ReSize( win->X,win->Y,win->Width,win->Height ); } -- cgit v1.2.3