Skip to content

Commit

Permalink
Disable tree updates while modifying them to avoid flicker
Browse files Browse the repository at this point in the history
  • Loading branch information
AdrianTM committed Jul 8, 2024
1 parent 71cb363 commit fd78351
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1653,13 +1653,15 @@ void MainWindow::hideColumns() const

void MainWindow::hideLibs() const
{
currentTree->setUpdatesEnabled(false);
if (currentTree != ui->treeFlatpak && ui->checkHideLibs->isChecked()) {
for (QTreeWidgetItemIterator it(currentTree); (*it) != nullptr; ++it) {
if (isFilteredName((*it)->text(TreeCol::Name))) {
(*it)->setHidden(true);
}
}
}
currentTree->setUpdatesEnabled(true);
}

// Process downloaded *Packages.gz files
Expand Down Expand Up @@ -2256,6 +2258,7 @@ void MainWindow::findPackageOther()
if (word.length() == 1) {
return;
}
currentTree->setUpdatesEnabled(false);
QList<QTreeWidgetItem *> found_items;
if (currentTree != ui->treeFlatpak) {
found_items = currentTree->findItems(word, Qt::MatchContains, TreeCol::Name);
Expand All @@ -2270,6 +2273,7 @@ void MainWindow::findPackageOther()
if (currentTree != ui->treeFlatpak) {
hideLibs();
}
currentTree->setUpdatesEnabled(true);
}

void MainWindow::showOutput()
Expand Down Expand Up @@ -2663,6 +2667,7 @@ void MainWindow::filterChanged(const QString &arg1)
{
qDebug() << "+++" << __PRETTY_FUNCTION__ << "+++";
currentTree->blockSignals(true);
currentTree->setUpdatesEnabled(false);

QList<QTreeWidgetItem *> foundItems;
if (currentTree == ui->treeFlatpak) {
Expand Down Expand Up @@ -2760,6 +2765,8 @@ void MainWindow::filterChanged(const QString &arg1)
}
findPackageOther();
setSearchFocus();

currentTree->setUpdatesEnabled(true);
currentTree->blockSignals(false);
}

Expand Down Expand Up @@ -2882,13 +2889,15 @@ void MainWindow::on_pushForceUpdateBP_clicked()
// Hide/unhide lib/-dev packages
void MainWindow::on_checkHideLibs_toggled(bool checked)
{
ui->treeEnabled->setUpdatesEnabled(false);
ui->checkHideLibsMX->setChecked(checked);
ui->checkHideLibsBP->setChecked(checked);

for (QTreeWidgetItemIterator it(ui->treeEnabled); (*it) != nullptr; ++it) {
(*it)->setHidden(isFilteredName((*it)->text(TreeCol::Name)) && checked);
}
filterChanged(ui->comboFilterEnabled->currentText());
ui->treeEnabled->setUpdatesEnabled(true);
}

void MainWindow::on_pushUpgradeAll_clicked()
Expand Down

0 comments on commit fd78351

Please sign in to comment.