Patch 3 - replacing 1 and 2 - sorry
Guido Lerch
guido.lerch at gmail.com
Fri Oct 9 09:09:26 PDT 2015
Finally I think on El Captain and Mavericks the main window size, position
and state
is preserved.
I have no Yosemite at this point in time, Robert, can you test ?
Sorry for the first two quick shots ...
--
Best regards,
Guido
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.subsurface-divelog.org/pipermail/subsurface/attachments/20151009/957e114c/attachment.html>
-------------- next part --------------
From 732f5ebbfd63bf23a2e4fb2a244491b414c1899f Mon Sep 17 00:00:00 2001
From: glerch <guido.lerch at gmail.com>
Date: Fri, 9 Oct 2015 18:03:12 +0200
Subject: [PATCH] fixing main window size position and state
now size, position and state should be preserved correctly.
this replaces the last two patches I sent.
Signed-off-by: glerch <guido.lerch at gmail.com>
---
qt-ui/mainwindow.cpp | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index 8759760..5d8adbc 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -1085,11 +1085,12 @@ void MainWindow::initialUiSetup()
{
QSettings settings;
settings.beginGroup("MainWindow");
- QSize sz = settings.value("size", qApp->desktop()->size()).value<QSize>();
- if (settings.value("maximized", isMaximized()).value<bool>())
+ if (settings.value("maximized", isMaximized()).value<bool>()) {
showMaximized();
- else
- resize(sz);
+ } else {
+ restoreGeometry(settings.value("geometry").toByteArray());
+ restoreState(settings.value("windowState", 0).toByteArray());
+ }
state = (CurrentState)settings.value("lastState", 0).toInt();
switch (state) {
@@ -1110,6 +1111,7 @@ void MainWindow::initialUiSetup()
break;
}
settings.endGroup();
+ show();
}
const char *getSetting(QSettings &s, QString name)
@@ -1203,10 +1205,10 @@ void MainWindow::writeSettings()
QSettings settings;
settings.beginGroup("MainWindow");
- settings.setValue("lastState", (int)state);
+ settings.setValue("geometry", saveGeometry());
+ settings.setValue("windowState", saveState());
settings.setValue("maximized", isMaximized());
- if (!isMaximized())
- settings.setValue("size", size());
+ settings.setValue("lastState", (int)state);
if (state == VIEWALL)
saveSplitterSizes();
settings.endGroup();
--
1.9.5 (Apple Git-50.3)
More information about the subsurface
mailing list