vlc/vlc-2.2 | branch: master | Hannes Domani <[email protected]> | Sat Feb 27 15:54:09 2016 +0100| [7fd9a335f3c3c68a03b67e647635ed97080eec2b] | committer: Jean-Baptiste Kempf
Qt: change height when switching from/to minimal interface Close #7950 Signed-off-by: Jean-Baptiste Kempf <[email protected]> (cherry picked from commit a8899ae164387d6fd9d6f7ebd220ed70540c0d19) Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc/vlc-2.2.git/?a=commit;h=7fd9a335f3c3c68a03b67e647635ed97080eec2b --- modules/gui/qt4/main_interface.cpp | 41 +++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index 8c911e8..d02f353 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -830,8 +830,8 @@ void MainInterface::setVideoFullScreen( bool fs ) { /* TODO do we want to restore screen and position ? (when * qt-fullscreen-screennumber is forced) */ - setMinimalView( b_minimalView ); setInterfaceFullScreen( b_interfaceFullScreen ); + setMinimalView( b_minimalView ); #ifdef _WIN32 changeThumbbarButtons( THEMIM->getIM()->playingStatus() ); #endif @@ -988,10 +988,49 @@ void MainInterface::dockPlaylist( bool p_docked ) */ void MainInterface::setMinimalView( bool b_minimal ) { + bool b_menuBarVisible = menuBar()->isVisible(); + bool b_controlsVisible = controls->isVisible(); + bool b_statusBarVisible = statusBar()->isVisible(); + bool b_inputCVisible = inputC->isVisible(); + + if( !isFullScreen() && !isMaximized() && b_minimal ) + { + int i_heightChange = 0; + + if( b_menuBarVisible ) + i_heightChange += menuBar()->height(); + if( b_controlsVisible ) + i_heightChange += controls->height(); + if( b_statusBarVisible ) + i_heightChange += statusBar()->height(); + if( b_inputCVisible ) + i_heightChange += inputC->height(); + + if( i_heightChange != 0 ) + resize( width(), height() - i_heightChange ); + } + menuBar()->setVisible( !b_minimal ); controls->setVisible( !b_minimal ); statusBar()->setVisible( !b_minimal && b_statusbarVisible ); inputC->setVisible( !b_minimal ); + + if( !isFullScreen() && !isMaximized() && !b_minimal ) + { + int i_heightChange = 0; + + if( !b_menuBarVisible ) + i_heightChange += menuBar()->height(); + if( !b_controlsVisible ) + i_heightChange += controls->height(); + if( !b_statusBarVisible && statusBar()->isVisible() ) + i_heightChange += statusBar()->height(); + if( !b_inputCVisible ) + i_heightChange += inputC->height(); + + if( i_heightChange != 0 ) + resize( width(), height() + i_heightChange ); + } } /* _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
