From: Laurent Aimar Date: Wed, 12 Aug 2009 20:12:42 +0000 (+0200) Subject: Forced "on top" to the video widget in Qt4 while in fullscreen. X-Git-Tag: 1.1.0-ff~4426 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=644a03b1f2e701f38adec587b71638da0ef80107;p=vlc Forced "on top" to the video widget in Qt4 while in fullscreen. There is still a problem when the Gui itself has "on top" set. --- diff --git a/modules/gui/qt4/components/interface_widgets.cpp b/modules/gui/qt4/components/interface_widgets.cpp index 3c676aa234..cf923d4d60 100644 --- a/modules/gui/qt4/components/interface_widgets.cpp +++ b/modules/gui/qt4/components/interface_widgets.cpp @@ -158,11 +158,18 @@ void VideoWidget::SetFullScreen( bool b_fs ) { const Qt::WindowStates curstate = reparentable->windowState(); Qt::WindowStates newstate = curstate; + Qt::WindowFlags newflags = reparentable->windowFlags(); if( b_fs ) + { newstate |= Qt::WindowFullScreen; + newflags |= Qt::WindowStaysOnTopHint; + } else + { newstate &= ~Qt::WindowFullScreen; + newflags &= ~Qt::WindowStaysOnTopHint; + } if( newstate == curstate ) return; /* no changes needed */ @@ -170,10 +177,12 @@ void VideoWidget::SetFullScreen( bool b_fs ) { /* Go full-screen */ reparentable->setWindowState( newstate ); reparentable->setParent( NULL ); + reparentable->setWindowFlags( newflags ); reparentable->show(); } else { /* Go windowed */ + reparentable->setWindowFlags( newflags ); layout->addWidget( reparentable ); reparentable->setWindowState( newstate ); }