From 08e0eb3dab10f80834640979cca7c24e4caa2871 Mon Sep 17 00:00:00 2001 From: Christian Daniel Jensen Date: Tue, 3 Nov 2026 12:40:16 -0700 Subject: [PATCH] Keep Essence selection and mode inside one fixed-width popup to prevent toolbar clipping --- .../cards/additional_info/essence_filter_picker.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cockatrice/src/interface/widgets/cards/additional_info/essence_filter_picker.h b/cockatrice/src/interface/widgets/cards/additional_info/essence_filter_picker.h index d36b5da2e..fbf9b3174 100644 --- a/cockatrice/src/interface/widgets/cards/additional_info/essence_filter_picker.h +++ b/cockatrice/src/interface/widgets/cards/additional_info/essence_filter_picker.h @@ -7,6 +7,8 @@ #include class QMenu; +class QVBoxLayout; +class QWidget; /** * Compact, reusable multi-select Essence picker for the deck and card database @@ -23,16 +25,23 @@ public: [[nodiscard]] QSet activeEssences() const; void setEssenceActive(QChar essence, bool active); + // Put the host's filtering mode selector inside this popup too: + // neither toolbar should require a separate cramped control. + void addPopupControl(QWidget *control); void retranslateUi(); signals: void essenceToggled(QChar essence, bool active); + // A clear request removes ALL Essence filters, including exclusions, + // rather than creating fifteen negative filters in Exact/Exclude mode. + void selectionCleared(); private: void updateSummary(); QHash buttons; QMenu *popupMenu = nullptr; + QVBoxLayout *panelLayout = nullptr; }; #endif // CONTINUUMATRICE_ESSENCE_FILTER_PICKER_H