From 4e638d7fd7a135e701d5a01629c57b248352efe1 Mon Sep 17 00:00:00 2001 From: David Aguilar Date: Sun, 11 Feb 2024 02:05:20 -0800 Subject: [PATCH] mainwindow: set a sensible default size When `~/.config/nvim-qt/window-geometry.conf` does not exist then restoreGeometry() will initialize a window that is tiny and must be resized to see anything. Use a sensible default size and avoid restoring state when it is invalid. --- src/gui/mainwindow.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index 7892e2b5a..7af2598d2 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -323,10 +323,18 @@ void MainWindow::restoreWindowGeometry() // This error can occur when calling the two `settings.value(...)` below. qRegisterMetaTypeStreamOperators>("QList"); #endif - QSettings settings("nvim-qt", "window-geometry"); - restoreGeometry(settings.value("window_geometry").toByteArray()); - restoreState(settings.value("window_state").toByteArray()); + QVariant geometry{ settings.value("window_geometry") }; + if (geometry.isValid()) { + restoreGeometry(geometry.toByteArray()); + } + else { + resize(1280, 1440); + } + QVariant state{ settings.value("window_state") }; + if (state.isValid()) { + restoreState(state.toByteArray()); + } } void MainWindow::setGuiAdaptiveColorEnabled(bool isEnabled)