1 files changed, 11 insertions, 7 deletions
diff --git a/src/Utils.cpp b/src/Utils.cpp
index aa36d3d9..3a90bd50 100644
--- a/src/Utils.cpp
+++ b/src/Utils.cpp
@@ -882,16 +882,20 @@ utils::markRoomAsDirect(QString roomid, std::vector<RoomMember> members)
});
}
-int
+QPair<int, int>
utils::getChildNotificationsForSpace(const QString &spaceId)
{
auto children = cache::getRoomInfo(cache::client()->getChildRoomIds(spaceId.toStdString()));
- int total{0};
+ QPair<int, int> retVal;
for (const auto &[childId, child] : children) {
- if (child.is_space)
- total += utils::getChildNotificationsForSpace(childId);
- else
- total += child.notification_count;
+ if (child.is_space) {
+ auto temp{utils::getChildNotificationsForSpace(childId)};
+ retVal.first += temp.first;
+ retVal.second += temp.second;
+ } else {
+ retVal.first += child.notification_count;
+ retVal.second += child.highlight_count;
+ }
}
- return total;
+ return retVal;
}
|