From db0b659a539c67af0e5fdd543d4205ce84521ae4 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 aa5f05cda..a20c525af 100644 --- a/src/gui/DatabaseOpenWidget.cpp +++ b/src/gui/DatabaseOpenWidget.cpp @@ -322,6 +322,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 e99ec4cfd..a2c1498cd 100644 --- a/src/gui/MessageBox.cpp +++ b/src/gui/MessageBox.cpp @@ -19,6 +19,7 @@ #include "MessageBox.h" #include +#include #include #include #include @@ -126,6 +127,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 4da915df4..1de8e6a9f 100644 --- a/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp +++ b/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp @@ -168,6 +168,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 aeee1554b..c18f2876a 100644 --- a/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp +++ b/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.cpp @@ -287,6 +287,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; @@ -300,6 +301,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; }