mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-18 08:22:15 -07:00
only trigger the top-level updateVisibility on filter update
Every folder widget was connecting the filter update signals to their updateVisibility, but updateVisibility is already recursive. That means a bunch of redundant updateVisibility calls happen every time a filter update signal is emitted
This commit is contained in:
parent
e2990c9dff
commit
2da0deff62
2 changed files with 7 additions and 7 deletions
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -198,6 +198,7 @@ void VisualDeckStorageWidget::updateTagFilter()
|
|||
{
|
||||
if (folderWidget) {
|
||||
tagFilterWidget->filterDecksBySelectedTags(folderWidget->findChildren<DeckPreviewWidget *>());
|
||||
folderWidget->updateVisibility();
|
||||
}
|
||||
emit tagFilterUpdated();
|
||||
}
|
||||
|
|
@ -206,6 +207,7 @@ void VisualDeckStorageWidget::updateColorFilter()
|
|||
{
|
||||
if (folderWidget) {
|
||||
deckPreviewColorIdentityFilterWidget->filterWidgets(folderWidget->findChildren<DeckPreviewWidget *>());
|
||||
folderWidget->updateVisibility();
|
||||
}
|
||||
emit colorFilterUpdated();
|
||||
}
|
||||
|
|
@ -215,6 +217,7 @@ void VisualDeckStorageWidget::updateSearchFilter()
|
|||
if (folderWidget) {
|
||||
searchWidget->filterWidgets(folderWidget->findChildren<DeckPreviewWidget *>(), searchWidget->getSearchText(),
|
||||
searchFolderNamesCheckBox->isChecked());
|
||||
folderWidget->updateVisibility();
|
||||
}
|
||||
emit searchFilterUpdated();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue