summaryrefslogtreecommitdiffstats
path: root/Gui
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-07-02 21:10:42 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-07-02 21:10:42 +0000
commitec989de7b062682835c721b173e9475b9ecaba44 (patch)
tree7c9ca3e7edbd92463d18bdc16c44ebdbd4b44aa8 /Gui
parent174efd77f23b4bb3f03cd43b972336adebc1c2e6 (diff)
downloadmpv-ec989de7b062682835c721b173e9475b9ecaba44.tar.bz2
mpv-ec989de7b062682835c721b173e9475b9ecaba44.tar.xz
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')
-rw-r--r--Gui/mplayer/gtk/fs.c5
-rw-r--r--Gui/mplayer/gtk/fs.h2
-rw-r--r--Gui/mplayer/sw.h5
-rw-r--r--Gui/mplayer/widgets.c6
-rw-r--r--Gui/wm/ws.c6
5 files changed, 14 insertions, 10 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:
diff --git a/Gui/wm/ws.c b/Gui/wm/ws.c
index d3fabf00e3..427549ede9 100644
--- a/Gui/wm/ws.c
+++ b/Gui/wm/ws.c
@@ -662,16 +662,16 @@ buttonreleased:
if ( !strncmp( name,"_ICEWM_TRAY",11 ) )
{
wsWMType=wsWMIceWM;
- mp_dbg( MSGT_GPLAYER,MSGL_STATUS,"[ws] Detected wm is IceWM.\n" );
+// mp_dbg( MSGT_GPLAYER,MSGL_STATUS,"[ws] Detected wm is IceWM.\n" );
}
if ( !strncmp( name,"_KDE_",5 ) )
{
- mp_dbg( MSGT_GPLAYER,MSGL_STATUS,"[ws] Detected wm is KDE.\n" );
+// mp_dbg( MSGT_GPLAYER,MSGL_STATUS,"[ws] Detected wm is KDE.\n" );
wsWMType=wsWMKDE;
}
if ( !strncmp( name,"KWM_WIN_DESKTOP",15 ) )
{
- mp_dbg( MSGT_GPLAYER,MSGL_STATUS,"[ws] Detected wm is WindowMaker style.\n" );
+// mp_dbg( MSGT_GPLAYER,MSGL_STATUS,"[ws] Detected wm is WindowMaker style.\n" );
wsWMType=wsWMWMaker;
}