From 8fde780d464f4390827e4632ea1f081b044b84cc Mon Sep 17 00:00:00 2001 From: pontscho Date: Mon, 1 Oct 2001 09:30:46 +0000 Subject: some bug fix, and sub window render speed up.. 10l kola ? :) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2026 b3059339-0415-0410-9bf9-f77b7e298cf2 --- Gui/Makefile | 3 +++ Gui/mplayer/Makefile | 3 +++ Gui/mplayer/mplayer.c | 2 ++ Gui/mplayer/play.c | 6 +++++- Gui/mplayer/sw.h | 6 +++--- Gui/skin/skin.c | 6 +++--- 6 files changed, 19 insertions(+), 7 deletions(-) diff --git a/Gui/Makefile b/Gui/Makefile index 7ea129a4e7..eead879efa 100644 --- a/Gui/Makefile +++ b/Gui/Makefile @@ -12,6 +12,9 @@ INCDIR = -I. -I./event -I./wm -I./skin $(GTKINC) OPTIMIZE = $(OPTFLAGS) -fomit-frame-pointer \ -fexpensive-optimizations -fschedule-insns2 -Wall +ifeq ($(TARGET_ARCH_X86),yes) +OPTIMIZE += -malign-double +endif CFLAGS = $(OPTIMIZE) $(INCDIR) $(DEBUG) diff --git a/Gui/mplayer/Makefile b/Gui/mplayer/Makefile index 138bb01a37..bc7b245c99 100644 --- a/Gui/mplayer/Makefile +++ b/Gui/mplayer/Makefile @@ -11,6 +11,9 @@ INCDIR = -I. -I../event -I../wm -I../skin $(GTKINC) OPTIMIZE = $(OPTFLAGS) -fomit-frame-pointer \ -fexpensive-optimizations -fschedule-insns2 -Wall +ifeq ($(TARGET_ARCH_X86),yes) +OPTIMIZE += -malign-double +endif CFLAGS = $(OPTIMIZE) $(INCDIR) $(DEBUG) diff --git a/Gui/mplayer/mplayer.c b/Gui/mplayer/mplayer.c index 4c90b8ff53..bfe184a4f8 100644 --- a/Gui/mplayer/mplayer.c +++ b/Gui/mplayer/mplayer.c @@ -104,6 +104,8 @@ void mplInit( int argc,char* argv[], char *envp[], void* disp ) appMPlayer.subWindow.KeyHandler=mplMainKeyHandle; appMPlayer.subWindow.ReSize=mplResize; + if ( appMPlayer.sub.Bitmap.Image ) wsConvert( &appMPlayer.subWindow,appMPlayer.sub.Bitmap.Image,appMPlayer.sub.Bitmap.ImageSize ); + wsPostRedisplay( &appMPlayer.mainWindow ); wsPostRedisplay( &appMPlayer.subWindow ); diff --git a/Gui/mplayer/play.c b/Gui/mplayer/play.c index 5d94f239ac..9f5d5b5d6c 100644 --- a/Gui/mplayer/play.c +++ b/Gui/mplayer/play.c @@ -53,8 +53,8 @@ void mplStop() // if ( !mplShMem->Playing ) return; if ( !appMPlayer.subWindow.isFullScreen ) { - wsMoveWindow( &appMPlayer.subWindow,appMPlayer.sub.x,appMPlayer.sub.y ); wsResizeWindow( &appMPlayer.subWindow,appMPlayer.sub.width,appMPlayer.sub.height ); + wsMoveWindow( &appMPlayer.subWindow,appMPlayer.sub.x,appMPlayer.sub.y ); } mplSubRender=1; wsClearWindow( appMPlayer.subWindow ); @@ -174,6 +174,7 @@ void ChangeSkin( void ) } wsSetBackgroundRGB( &appMPlayer.subWindow,appMPlayer.subR,appMPlayer.subG,appMPlayer.subB ); wsClearWindow( appMPlayer.subWindow ); + if ( appMPlayer.sub.Bitmap.Image ) wsConvert( &appMPlayer.subWindow,appMPlayer.sub.Bitmap.Image,appMPlayer.sub.Bitmap.ImageSize ); mplSubRender=1; wsPostRedisplay( &appMPlayer.subWindow ); } @@ -203,5 +204,8 @@ void EventHandling( void ) void mplResizeToMovieSize( unsigned int width,unsigned int height ) { if ( !appMPlayer.subWindow.isFullScreen ) + { wsResizeWindow( &appMPlayer.subWindow,width,height ); + wsMoveWindow( &appMPlayer.subWindow,appMPlayer.sub.x,appMPlayer.sub.y ); + } } diff --git a/Gui/mplayer/sw.h b/Gui/mplayer/sw.h index 1496f71ff7..551ae2f6b5 100644 --- a/Gui/mplayer/sw.h +++ b/Gui/mplayer/sw.h @@ -21,13 +21,13 @@ void mplSubDraw( wsParamDisplay ) if ( mplSubRender ) { - wsSetBackgroundRGB( &appMPlayer.subWindow,appMPlayer.subR,appMPlayer.subG,appMPlayer.subB ); +// wsSetBackgroundRGB( &appMPlayer.subWindow,appMPlayer.subR,appMPlayer.subG,appMPlayer.subB ); if ( appMPlayer.sub.Bitmap.Image ) { - wsConvert( &appMPlayer.subWindow,appMPlayer.sub.Bitmap.Image,appMPlayer.sub.Bitmap.ImageSize ); +// wsConvert( &appMPlayer.subWindow,appMPlayer.sub.Bitmap.Image,appMPlayer.sub.Bitmap.ImageSize ); wsPutImage( &appMPlayer.subWindow ); } - XFlush( wsDisplay ); +// XFlush( wsDisplay ); } appMPlayer.subWindow.State=0; } diff --git a/Gui/skin/skin.c b/Gui/skin/skin.c index 973363bd15..e5ba002699 100644 --- a/Gui/skin/skin.c +++ b/Gui/skin/skin.c @@ -162,15 +162,15 @@ int __base( char * in ) } if ( !strcmp( winList,"sub" ) ) { - defList->sub.x=x; - defList->sub.y=y; defList->sub.type=itBase; strcpy( tmp,path ); strcat( tmp,fname ); if ( skinBPRead( tmp,&defList->sub.Bitmap ) ) return 1; + defList->sub.x=x; + defList->sub.y=y; defList->sub.width=defList->sub.Bitmap.Width; defList->sub.height=defList->sub.Bitmap.Height; #ifdef DEBUG - dbprintf( 3,"[skin] width: %d height: %d\n",defList->sub.width,defList->sub.height ); + dbprintf( 3,"[skin] %d,%d %dx%d\n",defList->sub.x,defList->sub.y,defList->sub.width,defList->sub.height ); #endif } /* -- cgit v1.2.3