summaryrefslogtreecommitdiffstats
path: root/Gui
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-05-05 18:46:42 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-05-05 18:46:42 +0000
commit8c9b41e72a2dea564512c31e15f5f72c663fd49c (patch)
tree339aa94d2b0fbf42fe619fdaa9f102682b0617e8 /Gui
parent2d3655ed7138f946294d49ed020596f495f4ced3 (diff)
downloadmpv-8c9b41e72a2dea564512c31e15f5f72c663fd49c.tar.bz2
mpv-8c9b41e72a2dea564512c31e15f5f72c663fd49c.tar.xz
window resize bug fixed
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5987 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Gui')
-rw-r--r--Gui/interface.c6
-rw-r--r--Gui/mplayer/play.c9
-rw-r--r--Gui/mplayer/play.h1
-rw-r--r--Gui/wm/ws.c11
4 files changed, 15 insertions, 12 deletions
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 );
}