vlc | branch: master | Hugo Beauzée-Luyssen <[email protected]> | Wed Jan 18 19:04:13 2017 +0100| [f1614cf49166a303a1d2190a94d97c2214fe0e92] | committer: Hugo Beauzée-Luyssen
qt: Restore window size & position when leaving fullscreen Based on the issue reporter's patch Fix #11691 > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f1614cf49166a303a1d2190a94d97c2214fe0e92 --- modules/gui/qt/main_interface.cpp | 14 +++++++++++--- modules/gui/qt/main_interface.hpp | 2 ++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt/main_interface.cpp b/modules/gui/qt/main_interface.cpp index 894da7a..747e654 100644 --- a/modules/gui/qt/main_interface.cpp +++ b/modules/gui/qt/main_interface.cpp @@ -814,7 +814,9 @@ void MainInterface::setVideoFullScreen( bool fs ) /* To be sure window is on proper-screen in xinerama */ if( !screenres.contains( pos() ) ) { - msg_Dbg( p_intf, "Moving video to correct screen"); + lastWinPosition = pos(); + lastWinSize = size(); + msg_Dbg( p_intf, "Moving video to correct position"); move( QPoint( screenres.x(), screenres.y() ) ); } @@ -830,10 +832,16 @@ void MainInterface::setVideoFullScreen( bool fs ) } else { - /* TODO do we want to restore screen and position ? (when - * qt-fullscreen-screennumber is forced) */ setMinimalView( b_minimalView ); setInterfaceFullScreen( b_interfaceFullScreen ); + if( lastWinPosition.isNull() == false ) + { + move( lastWinPosition ); + resize( lastWinSize ); + lastWinPosition = QPoint(); + lastWinSize = QSize(); + } + } videoWidget->sync(); } diff --git a/modules/gui/qt/main_interface.hpp b/modules/gui/qt/main_interface.hpp index 02c0fd9..7c396ea 100644 --- a/modules/gui/qt/main_interface.hpp +++ b/modules/gui/qt/main_interface.hpp @@ -156,6 +156,8 @@ protected: /* Status and flags */ QWidget *stackCentralOldWidget; + QPoint lastWinPosition; + QSize lastWinSize; /// To restore the same window size when leaving fullscreen QMap<QWidget *, QSize> stackWidgetsSizes; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
