async reply fix ?

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@1803 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
pontscho 2001-08-31 14:16:28 +00:00
parent a2023e8ff4
commit 25c699c572
4 changed files with 17 additions and 9 deletions

View File

@ -205,4 +205,11 @@ void ChangeSkin( void )
mplSubRender=1; wsPostRedisplay( &appMPlayer.subWindow );
}
}
mplShMem->SkinChange=0;
}
void EventHandling( void )
{
wsHandleEvents();mplTimerHandler(0); // handle GUI timer events
if ( mplShMem->SkinChange ) ChangeSkin();
}

View File

@ -47,6 +47,8 @@ typedef struct
int TimeSec;
int LengthInSec;
char Filename[4096];
int SkinChange;
} mplCommStruct;
extern mplCommStruct * mplShMem;
@ -82,5 +84,6 @@ extern void mplSendMessage( int msg );
extern void mplPlayerThread( void );
extern void ChangeSkin( void );
extern void EventHandling( void );
#endif

View File

@ -168,7 +168,7 @@ void mplMainSigHandler( int s )
if ( s != SIGTYPE ) return;
// #ifdef DEBUG
if ( gtkShMem->message ) dbprintf( 5,"[psignal] main sig handler gtk msg: %d\n",gtkShMem->message );
// if ( gtkShMem->message ) dbprintf( 5,"[psignal] main sig handler gtk msg: %d\n",gtkShMem->message );
// if ( mplShMem->message ) dbprintf( 5,"[psignal] main sig handler mpl msg: %d\n",mplShMem->message );
// #endif
@ -199,9 +199,7 @@ void mplMainSigHandler( int s )
case evLoad: gtkVisibleFileSelect=0; break;
}
break;
case evSkinBrowser:
ChangeSkin();
break;
case evSkinBrowser: mplShMem->SkinChange=1; break;
case evFileLoaded:
strcpy( mplShMem->Filename,gtkShMem->fs.dir ); strcat( mplShMem->Filename,"/" ); strcat( mplShMem->Filename,gtkShMem->fs.filename );
if ( mplMainAutoPlay ) mplGeneralTimer=1;

View File

@ -583,7 +583,7 @@ play_next_file:
mplShMem->Playing= (gui_no_filename) ? 0 : 1;
while(mplShMem->Playing!=1){
usleep(20000);
wsHandleEvents();mplTimerHandler(0); // handle GUI timer events
EventHandling();
}
if(gui_no_filename){
filename=mplShMem->Filename;
@ -1291,7 +1291,7 @@ if(1)
}
#ifdef HAVE_NEW_GUI
if(use_gui){
wsHandleEvents();mplTimerHandler(0); // handle GUI timer events
EventHandling();
}
#endif
video_out->check_events(); // check events AST
@ -1329,7 +1329,7 @@ if(1)
#ifdef HAVE_NEW_GUI
if(use_gui){
wsHandleEvents();mplTimerHandler(0); // handle GUI timer events
EventHandling();
}
#endif
@ -1341,7 +1341,7 @@ if(1)
usec_sleep(1000000*(time_frame-0.002));
#ifdef HAVE_NEW_GUI
if(use_gui){
wsHandleEvents();mplTimerHandler(0); // handle GUI timer events
EventHandling();
}
#endif
time_frame-=GetRelativeTime();
@ -1512,7 +1512,7 @@ if(auto_quality>0){
#endif
#ifdef HAVE_NEW_GUI
if(use_gui){
wsHandleEvents();mplTimerHandler(0); // handle GUI timer events
EventHandling();
if(mplShMem->Playing!=2 || (rel_seek_secs || abs_seek_pos)) break; // end of pause or seek
}
#endif