diff options
| author | Aleix Pol <aleixpol@kde.org> | 2015-10-28 17:34:56 (GMT) |
|---|---|---|
| committer | Aleix Pol <aleixpol@kde.org> | 2015-10-28 17:34:56 (GMT) |
| commit | f110bb31d0599fda5478d035bdaf5ce325419ca6 (patch) | |
| tree | 82a06247ae4fcd1a1f140708663a151182bd8197 | |
| parent | 89208725ec4c18129076c661873bf303ab7a4d38 (diff) | |
Fix PackageKit details display
Properly check if the details we receive are the ones we're interested in.
Make sure we update when the resources arrive in the resource instance.
| -rw-r--r-- | libmuon/backends/PackageKitBackend/PackageKitResource.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libmuon/backends/PackageKitBackend/PackageKitResource.cpp b/libmuon/backends/PackageKitBackend/PackageKitResource.cpp index ec48641..984bf24 100644 --- a/libmuon/backends/PackageKitBackend/PackageKitResource.cpp +++ b/libmuon/backends/PackageKitBackend/PackageKitResource.cpp @@ -290,18 +290,20 @@ void PackageKitResource::fetchDetails() m_details.insert("fetching", true);//we add an entry so it's not re-fetched. PackageKit::Transaction* t = PackageKit::Daemon::getDetails(availablePackageId()); - connect(t, SIGNAL(details(PackageKit::Details)), this, SLOT(setDetails(PackageKit::Details))); + connect(t, &PackageKit::Transaction::details, this, &PackageKitResource::setDetails); connect(t, &PackageKit::Transaction::errorCode, this, [](PackageKit::Transaction::Error, const QString& msg){ qWarning() << "error fetching details" << msg; }); } void PackageKitResource::setDetails(const PackageKit::Details & details) { - if (!m_packages.value(PackageKit::Transaction::InfoAvailable).contains(details.packageId())) + const bool ourDetails = details.packageId() == availablePackageId(); + if (!ourDetails) return; m_details = details; - emit stateChanged(); + + backend()->allDataChanged(); } void PackageKitResource::fetchChangelog() |
