Commit f9fd0e7b authored by Ismael Asensio's avatar Ismael Asensio
Browse files

[search] Close tags menu after click when there is only one tag

It stays open otherwise to allow checking/unchecking several tags at a time

BUG: 424873
FIXED-IN: 20.08
parent 48158d70
......@@ -272,12 +272,14 @@ void DolphinFacetsWidget::updateTagsMenuItems(const QUrl&, const KFileItemList&
allTags.sort(Qt::CaseInsensitive);
allTags.removeDuplicates();
const bool onlyOneTag = allTags.count() == 1;
for (const QString& tagName : qAsConst(allTags)) {
QAction* action = m_tagsSelector->menu()->addAction(QIcon::fromTheme(QStringLiteral("tag")), tagName);
action->setCheckable(true);
action->setChecked(m_searchTags.contains(tagName));
connect(action, &QAction::triggered, this, [this, tagName](bool isChecked) {
connect(action, &QAction::triggered, this, [this, tagName, onlyOneTag](bool isChecked) {
if (isChecked) {
addSearchTag(tagName);
} else {
......@@ -285,7 +287,9 @@ void DolphinFacetsWidget::updateTagsMenuItems(const QUrl&, const KFileItemList&
}
emit facetChanged();
m_tagsSelector->menu()->show();
if (!onlyOneTag) {
m_tagsSelector->menu()->show();
}
});
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment