aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2018-12-17 16:32:17 +0100
committerEike Ziller <eike.ziller@qt.io>2018-12-18 13:34:20 +0000
commit6247b243929b6fe675f4da3a5413b067838fd67b (patch)
tree5649ea910d82704b75e9c827975e249e750817ab
parentf377e81ca7b4b4f983b9771b90279fe28cfe7849 (diff)
Do not force an artificially high minimum size on the options dialog
We want it to have a reasonable first-use size, but we can just set that manually when opening it the first time. Afterwards the geometry is restored from the settings. All pages already have a vertical scrollbar available, but that also forced a relatively large minimum size. Reduce this. Fix-up of dba102ff618496b16c2f3b4772cea7a323946606 and 63be3a4024ff5e4755506295d9e861afd96a9ca6 Fixes: QTCREATORBUG-21678 Change-Id: Iff5810b6ebfe51e3fe4da528bc859598c8df2bb4 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
-rw-r--r--src/plugins/coreplugin/dialogs/settingsdialog.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/plugins/coreplugin/dialogs/settingsdialog.cpp b/src/plugins/coreplugin/dialogs/settingsdialog.cpp
index ddb91fe469..596d498875 100644
--- a/src/plugins/coreplugin/dialogs/settingsdialog.cpp
+++ b/src/plugins/coreplugin/dialogs/settingsdialog.cpp
@@ -56,6 +56,11 @@
#include <QStyle>
#include <QStyledItemDelegate>
+const int kInitialWidth = 750;
+const int kInitialHeight = 450;
+const int kMaxMinimumWidth = 250;
+const int kMaxMinimumHeight = 250;
+
static const char pageKeyC[] = "General/LastPreferencePage";
const int categoryIconSize = 24;
@@ -362,8 +367,8 @@ private:
QSize minSize = inner->minimumSizeHint();
minSize += QSize(fw, fw);
minSize += QSize(scrollBarWidth(), 0);
- minSize.setHeight(qMin(minSize.height(), 450));
- minSize.setWidth(qMin(minSize.width(), 810));
+ minSize.setWidth(qMin(minSize.width(), kMaxMinimumWidth));
+ minSize.setHeight(qMin(minSize.height(), kMaxMinimumHeight));
return minSize;
}
return QSize(0, 0);
@@ -547,7 +552,6 @@ void SettingsDialog::createGui()
m_stackedLayout->setMargin(0);
QWidget *emptyWidget = new QWidget(this);
- emptyWidget->setMinimumSize(QSize(500, 500));
m_stackedLayout->addWidget(emptyWidget); // no category selected, for example when filtering
QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok |
@@ -740,6 +744,8 @@ bool SettingsDialog::execDialog()
static const QLatin1String kPreferenceDialogSize("Core/PreferenceDialogSize");
if (ICore::settings()->contains(kPreferenceDialogSize))
resize(ICore::settings()->value(kPreferenceDialogSize).toSize());
+ else
+ resize(kInitialWidth, kInitialHeight);
exec();
m_running = false;
m_instance = nullptr;