changeset 29089:5f535fe782b3 stable

fix restoring dock widgets geometry whe using Qt 5.15 (bug #59426) * main-window.cc (set_window_layout): restore state and geometry of the main also after all widgets were added
author Torsten Lilge <ttl-octave@mailbox.org>
date Sun, 22 Nov 2020 17:27:09 +0100
parents 909d68d27892
children f61d1faacfca f8c6660f2ccc
files libgui/src/main-window.cc
diffstat 1 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/libgui/src/main-window.cc	Sun Nov 22 16:49:30 2020 +0100
+++ b/libgui/src/main-window.cc	Sun Nov 22 17:27:09 2020 +0100
@@ -1541,8 +1541,19 @@
           }
       }
 
-    if (! settings)
+    if (settings)
       {
+        // Restore main window state and geometry after creating all
+        // dock widgets
+        if (! restoreState (settings->value (mw_state).toByteArray ()))
+          restoreState (mw_state.def.toByteArray ());
+
+        if (! restoreGeometry (settings->value (mw_geometry).toByteArray ()))
+          restoreGeometry (mw_geometry.def.toByteArray ());
+      }
+    else
+      {
+        // Reset to the initial window layout and size
         restoreGeometry (mw_geometry.def.toByteArray ());
         restoreState (mw_state.def.toByteArray ());