From 54ccbc9cf9f8cd81f0ca4081de8dfe4c6b58f972 Mon Sep 17 00:00:00 2001 From: Christian Daniel Jensen Date: Tue, 3 Nov 2026 12:40:24 -0700 Subject: [PATCH] Keep Essence selection and mode inside one fixed-width popup to prevent toolbar clipping --- .../visual_database_display_color_filter_widget.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp index bbd7aa607..1cab0ac0e 100644 --- a/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp +++ b/cockatrice/src/interface/widgets/visual_database_display/visual_database_display_color_filter_widget.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -24,12 +25,20 @@ VisualDatabaseDisplayColorFilterWidget::VisualDatabaseDisplayColorFilterWidget(Q // A 15-icon horizontal row cannot fit the database filter toolbar. essencePicker = new EssenceFilterPicker(this); layout->addWidget(essencePicker); + // FlowWidget measures THIS parent widget, not its nested button. Give it + // an explicit size hint that cannot clip the picker. + setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Preferred); + setMinimumWidth(essencePicker->width()); connect(essencePicker, &EssenceFilterPicker::essenceToggled, this, &VisualDatabaseDisplayColorFilterWidget::handleColorToggled); + connect(essencePicker, &EssenceFilterPicker::selectionCleared, this, [this]() { + filterModel->clearFiltersOfType(CardFilter::Attr::AttrColor); + }); + modeComboBox = new QComboBox(this); - layout->addWidget(modeComboBox); + essencePicker->addPopupControl(modeComboBox); connect(modeComboBox, QOverload::of(&QComboBox::currentIndexChanged), this, &VisualDatabaseDisplayColorFilterWidget::updateFilterMode);