diff options
author | pontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-07-02 21:10:42 +0000 |
---|---|---|
committer | pontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-07-02 21:10:42 +0000 |
commit | ec989de7b062682835c721b173e9475b9ecaba44 (patch) | |
tree | 7c9ca3e7edbd92463d18bdc16c44ebdbd4b44aa8 /Gui/mplayer | |
parent | 174efd77f23b4bb3f03cd43b972336adebc1c2e6 (diff) |
fix window hiding bug with some wms (kde, gnome, icewm, mwm, wmaker)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6623 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Gui/mplayer')
-rw-r--r-- | Gui/mplayer/gtk/fs.c | 5 | ||||
-rw-r--r-- | Gui/mplayer/gtk/fs.h | 2 | ||||
-rw-r--r-- | Gui/mplayer/sw.h | 5 | ||||
-rw-r--r-- | Gui/mplayer/widgets.c | 6 |
4 files changed, 11 insertions, 7 deletions
diff --git a/Gui/mplayer/gtk/fs.c b/Gui/mplayer/gtk/fs.c index a3ffb2f28d..9ee5a6c58b 100644 --- a/Gui/mplayer/gtk/fs.c +++ b/Gui/mplayer/gtk/fs.c @@ -185,7 +185,7 @@ void CheckDir( GtkWidget * list,char * directory ) static int FirstInit = 1; -void ShowFileSelect( int type ) +void ShowFileSelect( int type,int modal ) { int i; @@ -235,6 +235,9 @@ void ShowFileSelect( int type ) gtk_entry_set_text( GTK_ENTRY( fsFilterCombo ),fsOtherFilterNames[fsNumberOfOtherFilterNames][0] ); break; } + + gtk_window_set_modal( GTK_WINDOW( fsFileSelect ),modal ); + gtk_widget_show( fsFileSelect ); } diff --git a/Gui/mplayer/gtk/fs.h b/Gui/mplayer/gtk/fs.h index c0368394e0..b1de763a26 100644 --- a/Gui/mplayer/gtk/fs.h +++ b/Gui/mplayer/gtk/fs.h @@ -10,7 +10,7 @@ extern GtkWidget * fsFileSelect; extern void HideFileSelect( void ); -extern void ShowFileSelect( int type ); +extern void ShowFileSelect( int type, int modal ); extern GtkWidget * create_FileSelect( void ); diff --git a/Gui/mplayer/sw.h b/Gui/mplayer/sw.h index 88cf6ec235..0dc177b8ce 100644 --- a/Gui/mplayer/sw.h +++ b/Gui/mplayer/sw.h @@ -9,6 +9,7 @@ void mplSubDraw( wsParamDisplay ) if ( appMPlayer.subWindow.State == wsWindowClosed ) exit_player( MSGTR_Exit_quit ); if ( appMPlayer.subWindow.State == wsWindowFocusIn ) SubVisible++; + if ( appMPlayer.subWindow.State == wsWindowFocusOut && wsWMType != wsWMKDE && wsWMType != wsWMIceWM ) SubVisible--; if ( !appMPlayer.subWindow.Mapped || appMPlayer.subWindow.Visible == wsWindowNotVisible ) return; @@ -64,8 +65,8 @@ void mplSubMouseHandle( int Button,int X,int Y,int RX,int RY ) if ( ( !mplSubMoved )&&( appMPlayer.subWindow.isFullScreen ) ) { if( SubVisible++%2 ) wsMoveTopWindow( wsDisplay,appMPlayer.mainWindow.WindowID ); - else wsMoveTopWindow( wsDisplay,appMPlayer.subWindow.WindowID ); - } + else if ( wsWMType != wsWMNetWM && wsWMType != wsWMKDE ) wsMoveTopWindow( wsDisplay,appMPlayer.subWindow.WindowID ); + } msButton=0; mplSubMoved=0; break; diff --git a/Gui/mplayer/widgets.c b/Gui/mplayer/widgets.c index 6602096db0..69225367e3 100644 --- a/Gui/mplayer/widgets.c +++ b/Gui/mplayer/widgets.c @@ -163,15 +163,15 @@ void gtkShow( int type,char * param ) // gtkSetLayer( PlayList ); break; case evLoad: - ShowFileSelect( fsVideoSelector ); + ShowFileSelect( fsVideoSelector,0 ); gtkSetLayer( fsFileSelect ); break; case evFirstLoad: - ShowFileSelect( fsVideoSelector ); + ShowFileSelect( fsVideoSelector,0 ); gtkSetLayer( fsFileSelect ); break; case evLoadSubtitle: - ShowFileSelect( fsSubtitleSelector ); + ShowFileSelect( fsSubtitleSelector,0 ); gtkSetLayer( fsFileSelect ); break; case evAbout: |