File indexing completed on 2024-05-05 17:33:03

0001 /*
0002  *   SPDX-FileCopyrightText: 2022 Aleix Pol Gonzalez <aleixpol@blue-systems.com>
0003  *
0004  *   SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005  */
0006 
0007 #include "OdrsAppsModel.h"
0008 #include "appstream/AppStreamIntegration.h"
0009 #include <ReviewsBackend/Rating.h>
0010 #include <utils.h>
0011 
0012 OdrsAppsModel::OdrsAppsModel()
0013 {
0014     auto x = AppStreamIntegration::global()->reviews();
0015     connect(x.get(), &OdrsReviewsBackend::ratingsReady, this, &OdrsAppsModel::refresh);
0016     if (!x->top().isEmpty()) {
0017         refresh();
0018     }
0019 }
0020 
0021 void OdrsAppsModel::refresh()
0022 {
0023     const auto top = AppStreamIntegration::global()->reviews()->top();
0024     setUris(kTransform<QVector<QUrl>>(top, [](auto r) {
0025         return QUrl("appstream://" + r->packageName());
0026     }));
0027 }