diff --git a/rootmodel.cpp b/rootmodel.cpp --- a/rootmodel.cpp +++ b/rootmodel.cpp @@ -336,6 +336,25 @@ } groups.prepend(new GroupEntry(this, QString(), QString(), m_favorites)); + } else if (flat()) { + QList appList; + + foreach (const AbstractEntry *groupEntry, m_entryList) { + AbstractModel *model = groupEntry->childModel(); + + if (!model) continue; + + for (int i = 0; i < model->count(); ++i) { + AbstractEntry *appEntry = static_cast(model->index(i, 0).internalPointer()); + + if (appEntry->name().isEmpty()) { + continue; + } + + appList.append(appEntry); + } + } + groups = appList; } else { QHash> m_categoryHash;