From: Jean-Baptiste Kempf Date: Tue, 7 Sep 2010 13:07:20 +0000 (+0200) Subject: Qt: be able to recompute the minimalWidth at anytime X-Git-Tag: 1.2.0-pre1~5303 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=6e14c048289103e081ec214f51b929fe69ea254b;p=vlc Qt: be able to recompute the minimalWidth at anytime Close #3774 --- diff --git a/modules/gui/qt4/main_interface.cpp b/modules/gui/qt4/main_interface.cpp index a308ff4c73..300bea7ad8 100644 --- a/modules/gui/qt4/main_interface.cpp +++ b/modules/gui/qt4/main_interface.cpp @@ -252,8 +252,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf ) /* Final sizing and showing */ setVisible( !b_hideAfterCreation ); - setMinimumWidth( __MAX( controls->sizeHint().width(), - menuBar()->sizeHint().width() ) + 30 ); + computeMinimumSize(); /* Switch to minimal view if needed, must be called after the show() */ if( b_minimalView ) @@ -318,6 +317,15 @@ MainInterface::~MainInterface() p_intf->p_sys->p_mi = NULL; } +void MainInterface::computeMinimumSize() +{ + int minWidth = 30; + if( menuBar()->isVisible() ) + minWidth += __MAX( controls->sizeHint().width(), menuBar()->sizeHint().width() ); + + setMinimumWidth( minWidth ); +} + /***************************** * Main UI handling * *****************************/ @@ -813,7 +821,10 @@ void MainInterface::toggleMinimalView( bool b_minimal ) } b_minimalView = b_minimal; if( !b_videoFullScreen ) + { setMinimalView( b_minimalView ); + computeMinimumSize(); + } emit minimalViewToggled( b_minimalView ); } diff --git a/modules/gui/qt4/main_interface.hpp b/modules/gui/qt4/main_interface.hpp index c8264c796d..a675d87cfd 100644 --- a/modules/gui/qt4/main_interface.hpp +++ b/modules/gui/qt4/main_interface.hpp @@ -120,6 +120,7 @@ private: /* */ void setMinimalView( bool ); void setInterfaceFullScreen( bool ); + void computeMinimumSize(); /* */ QSettings *settings;