diff --git a/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp b/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp index f15c0e6b7..4522e64d8 100644 --- a/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.cpp @@ -105,10 +105,7 @@ void DeckPreviewWidget::initializeUi(const bool deckLoadSuccess) void DeckPreviewWidget::updateVisibility() { - if (isVisible() != checkVisibility()) { - setHidden(!checkVisibility()); - emit visibilityUpdated(); - } + setHidden(!checkVisibility()); } bool DeckPreviewWidget::checkVisibility() const diff --git a/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h b/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h index f8aac59fa..4dc5c5aa6 100644 --- a/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h +++ b/cockatrice/src/client/ui/widgets/visual_deck_storage/deck_preview/deck_preview_widget.h @@ -43,7 +43,6 @@ public: signals: void deckLoadRequested(const QString &filePath); void openDeckEditor(const DeckLoader *deck); - void visibilityUpdated(); public slots: void setFilePath(const QString &filePath); diff --git a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp index 76967c784..8ac228410 100644 --- a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.cpp @@ -164,6 +164,17 @@ void VisualDeckStorageWidget::retranslateUi() searchFolderNamesCheckBox->setText(tr("Include Folder Names in Search")); } +/** + * Reapplies all sort and filter options by calling the appropriate update methods. + */ +void VisualDeckStorageWidget::reapplySortAndFilters() +{ + updateSortOrder(); + updateTagFilter(); + updateColorFilter(); + updateSearchFilter(); +} + void VisualDeckStorageWidget::createRootFolderWidget() { folderWidget = new VisualDeckStorageFolderDisplayWidget(this, this, SettingsCache::instance().getDeckPath(), false, @@ -172,14 +183,14 @@ void VisualDeckStorageWidget::createRootFolderWidget() scrollArea->setWidget(folderWidget); // this automatically destroys the old folderWidget scrollArea->widget()->setMaximumWidth(scrollArea->viewport()->width()); scrollArea->widget()->adjustSize(); - updateSortOrder(); + reapplySortAndFilters(); } void VisualDeckStorageWidget::updateShowFolders(bool enabled) { if (folderWidget) { folderWidget->updateShowFolders(enabled); - updateSortOrder(); + reapplySortAndFilters(); } } @@ -227,4 +238,4 @@ void VisualDeckStorageWidget::updateTagsVisibility(const bool visible) } else { tagFilterWidget->setHidden(true); } -} +} \ No newline at end of file diff --git a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.h b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.h index 2a09f6736..adfff06cb 100644 --- a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.h +++ b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_widget.h @@ -66,6 +66,8 @@ private: QCheckBox *searchFolderNamesCheckBox; QScrollArea *scrollArea; VisualDeckStorageFolderDisplayWidget *folderWidget; + + void reapplySortAndFilters(); }; #endif // VISUAL_DECK_STORAGE_WIDGET_H