From e7d977f58d440d4737eca82995c27c33cb24bd6a Mon Sep 17 00:00:00 2001 From: Timothy Flynn Date: Fri, 20 Oct 2023 10:00:41 -0400 Subject: [PATCH] Ladybird/Qt: Display drown-down settings using QPushButton The default behavior of QPushButton is much closer to what we want from a drop-down menu, as shown in the QPushButton::setMenu documentation: https://doc.qt.io/qt-6/qpushbutton.html#setMenu This also results in much less of a "squished" look than before. --- Ladybird/Qt/SettingsDialog.cpp | 8 ++++---- Ladybird/Qt/SettingsDialog.h | 5 ++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Ladybird/Qt/SettingsDialog.cpp b/Ladybird/Qt/SettingsDialog.cpp index e7a09d1af6e..811e036bcca 100644 --- a/Ladybird/Qt/SettingsDialog.cpp +++ b/Ladybird/Qt/SettingsDialog.cpp @@ -23,14 +23,16 @@ SettingsDialog::SettingsDialog(QMainWindow* window) m_enable_search = make(this); m_enable_search->setChecked(Settings::the()->enable_search()); - m_search_engine_dropdown = make(this); + m_search_engine_dropdown = make(this); m_search_engine_dropdown->setText(qstring_from_ak_deprecated_string(Settings::the()->search_engine().name)); + m_search_engine_dropdown->setMaximumWidth(200); m_enable_autocomplete = make(this); m_enable_autocomplete->setChecked(Settings::the()->enable_autocomplete()); - m_autocomplete_engine_dropdown = make(this); + m_autocomplete_engine_dropdown = make(this); m_autocomplete_engine_dropdown->setText(Settings::the()->autocomplete_engine().name); + m_autocomplete_engine_dropdown->setMaximumWidth(200); m_new_tab_page = make(this); m_new_tab_page->setText(Settings::the()->new_tab_page()); @@ -85,7 +87,6 @@ void SettingsDialog::setup_search_engines() search_engine_menu->addAction(action); } m_search_engine_dropdown->setMenu(search_engine_menu); - m_search_engine_dropdown->setPopupMode(QToolButton::InstantPopup); m_search_engine_dropdown->setEnabled(Settings::the()->enable_search()); QMenu* autocomplete_engine_menu = new QMenu(this); @@ -98,7 +99,6 @@ void SettingsDialog::setup_search_engines() autocomplete_engine_menu->addAction(action); } m_autocomplete_engine_dropdown->setMenu(autocomplete_engine_menu); - m_autocomplete_engine_dropdown->setPopupMode(QToolButton::InstantPopup); m_autocomplete_engine_dropdown->setEnabled(Settings::the()->enable_autocomplete()); connect(m_enable_search, &QCheckBox::stateChanged, this, [&](int state) { diff --git a/Ladybird/Qt/SettingsDialog.h b/Ladybird/Qt/SettingsDialog.h index 3df4717d609..51eecbfee1f 100644 --- a/Ladybird/Qt/SettingsDialog.h +++ b/Ladybird/Qt/SettingsDialog.h @@ -12,7 +12,6 @@ #include #include #include -#include #pragma once @@ -30,9 +29,9 @@ private: QMainWindow* m_window { nullptr }; OwnPtr m_new_tab_page; OwnPtr m_enable_search; - OwnPtr m_search_engine_dropdown; + OwnPtr m_search_engine_dropdown; OwnPtr m_enable_autocomplete; - OwnPtr m_autocomplete_engine_dropdown; + OwnPtr m_autocomplete_engine_dropdown; }; }