diff --git a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp index 677abc678..e3054890b 100644 --- a/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_deck_storage/visual_deck_storage_folder_display_widget.cpp @@ -33,13 +33,6 @@ VisualDeckStorageFolderDisplayWidget::VisualDeckStorageFolderDisplayWidget( flowWidget = new FlowWidget(this, Qt::Horizontal, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAlwaysOff); containerLayout->addWidget(flowWidget); - connect(visualDeckStorageWidget, &VisualDeckStorageWidget::tagFilterUpdated, this, - &VisualDeckStorageFolderDisplayWidget::updateVisibility); - connect(visualDeckStorageWidget, &VisualDeckStorageWidget::colorFilterUpdated, this, - &VisualDeckStorageFolderDisplayWidget::updateVisibility); - connect(visualDeckStorageWidget, &VisualDeckStorageWidget::searchFilterUpdated, this, - &VisualDeckStorageFolderDisplayWidget::updateVisibility); - createWidgetsForFiles(); createWidgetsForFolders(); @@ -104,6 +97,10 @@ void VisualDeckStorageFolderDisplayWidget::createWidgetsForFiles() } } +/** + * Updates the visibility of this folder and all its DeckPreviewWidgets, as well as all its subfolders and their + * DeckPreviewWidgets. + */ void VisualDeckStorageFolderDisplayWidget::updateVisibility() { bool atLeastOneWidgetVisible = checkVisibility(); 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 789061999..d05e43714 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 @@ -198,6 +198,7 @@ void VisualDeckStorageWidget::updateTagFilter() { if (folderWidget) { tagFilterWidget->filterDecksBySelectedTags(folderWidget->findChildren()); + folderWidget->updateVisibility(); } emit tagFilterUpdated(); } @@ -206,6 +207,7 @@ void VisualDeckStorageWidget::updateColorFilter() { if (folderWidget) { deckPreviewColorIdentityFilterWidget->filterWidgets(folderWidget->findChildren()); + folderWidget->updateVisibility(); } emit colorFilterUpdated(); } @@ -215,6 +217,7 @@ void VisualDeckStorageWidget::updateSearchFilter() if (folderWidget) { searchWidget->filterWidgets(folderWidget->findChildren(), searchWidget->getSearchText(), searchFolderNamesCheckBox->isChecked()); + folderWidget->updateVisibility(); } emit searchFilterUpdated(); }