From ff6c3d7d9aac71dd2d0a76dad40e6048e13ee59e Mon Sep 17 00:00:00 2001 From: Jonathan White Date: Sat, 30 Mar 2024 08:01:44 -0400 Subject: [PATCH] Fix Message Box button size on macOS and Linux * Fixes #10381 --- src/gui/DatabaseOpenWidget.cpp | 1 + src/gui/MessageBox.cpp | 2 ++ src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp | 1 + src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp | 2 ++ src/gui/styles/base/basestyle.qss | 4 ---- 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/gui/DatabaseOpenWidget.cpp b/src/gui/DatabaseOpenWidget.cpp index 2628f621f..33aa2fdee 100644 --- a/src/gui/DatabaseOpenWidget.cpp +++ b/src/gui/DatabaseOpenWidget.cpp @@ -328,6 +328,7 @@ void DatabaseOpenWidget::openDatabase() auto btn = msgBox->addButton(tr("Open database anyway"), QMessageBox::ButtonRole::AcceptRole); msgBox->setDefaultButton(btn); msgBox->addButton(QMessageBox::Cancel); + msgBox->layout()->setSizeConstraint(QLayout::SetMinimumSize); msgBox->exec(); if (msgBox->clickedButton() != btn) { m_db.reset(new Database()); diff --git a/src/gui/MessageBox.cpp b/src/gui/MessageBox.cpp index 04e6ccb29..7cf8eb0ff 100644 --- a/src/gui/MessageBox.cpp +++ b/src/gui/MessageBox.cpp @@ -19,6 +19,7 @@ #include "MessageBox.h" #include +#include #include #include #include @@ -125,6 +126,7 @@ MessageBox::Button MessageBox::messageBox(QWidget* parent, msgBox.activateWindow(); msgBox.raise(); } + msgBox.layout()->setSizeConstraint(QLayout::SetMinimumSize); msgBox.exec(); Button returnButton = m_addedButtonLookup[msgBox.clickedButton()]; diff --git a/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp b/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp index 50e757bc4..266770ffc 100644 --- a/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp +++ b/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp @@ -173,6 +173,7 @@ bool DatabaseSettingsWidgetDatabaseKey::save() auto btn = msgBox->addButton(tr("Continue without password"), QMessageBox::ButtonRole::AcceptRole); msgBox->addButton(QMessageBox::Cancel); msgBox->setDefaultButton(QMessageBox::Cancel); + msgBox->layout()->setSizeConstraint(QLayout::SetMinimumSize); msgBox->exec(); if (msgBox->clickedButton() != btn) { return false; diff --git a/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp b/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp index 76f86fcae..569dcca5d 100644 --- a/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp +++ b/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp @@ -269,6 +269,7 @@ bool DatabaseSettingsWidgetEncryption::save() auto ok = warning.addButton(tr("Understood, keep number"), QMessageBox::ButtonRole::AcceptRole); auto cancel = warning.addButton(tr("Cancel"), QMessageBox::ButtonRole::RejectRole); warning.setDefaultButton(cancel); + warning.layout()->setSizeConstraint(QLayout::SetMinimumSize); warning.exec(); if (warning.clickedButton() != ok) { return false; @@ -282,6 +283,7 @@ bool DatabaseSettingsWidgetEncryption::save() auto ok = warning.addButton(tr("Understood, keep number"), QMessageBox::ButtonRole::AcceptRole); auto cancel = warning.addButton(tr("Cancel"), QMessageBox::ButtonRole::RejectRole); warning.setDefaultButton(cancel); + warning.layout()->setSizeConstraint(QLayout::SetMinimumSize); warning.exec(); if (warning.clickedButton() != ok) { return false; diff --git a/src/gui/styles/base/basestyle.qss b/src/gui/styles/base/basestyle.qss index feba71fdb..ee0fa4e02 100644 --- a/src/gui/styles/base/basestyle.qss +++ b/src/gui/styles/base/basestyle.qss @@ -17,10 +17,6 @@ QSpinBox { min-width: 90px; } -QDialogButtonBox QPushButton { - min-width: 55px; -} - QCheckBox, QRadioButton { spacing: 10px; }