History

Don't use (set)Geometry to save/restore mainWindow

Atlante45 committed 11 years ago

Commit f2545911 parent 88872821 file · +9 −2Browse files

Showing the changes to interface/src/MainWindow.cpp (1 of 1 file). Show all

Unified · Split

interface/src/MainWindow.cpp+9−2
@@ -33,11 +33,18 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent) { · 32 unmodified lines
3333 }
3434
3535 void MainWindow::restoreGeometry() {
36− setGeometry(SettingHandles::windowGeometry.get(qApp->desktop()->availableGeometry()));
36+ // Did not use setGeometry() on purpose,
37+ // see http://doc.qt.io/qt-5/qsettings.html#restoring-the-state-of-a-gui-application
38+ QRect geometry = SettingHandles::windowGeometry.get(qApp->desktop()->availableGeometry());
39+ move(geometry.topLeft());
40+ resize(geometry.size());
3741 }
3842
3943 void MainWindow::saveGeometry() {
40− SettingHandles::windowGeometry.set(geometry());
44+ // Did not use geometry() on purpose,
45+ // see http://doc.qt.io/qt-5/qsettings.html#restoring-the-state-of-a-gui-application
46+ QRect geometry(pos(), size());
47+ SettingHandles::windowGeometry.set(geometry);
4148 }
4249
4350 void MainWindow::moveEvent(QMoveEvent* event) {