From 23d6c2390f80239bf66a03cbe0df54e72f53c303 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Thu, 16 Dec 2021 12:37:41 +0100 Subject: Fixed the updating button Contributes to CURA-8587 --- plugins/Marketplace/PackageList.py | 5 +++-- plugins/Marketplace/PackageModel.py | 7 ++++++- plugins/Marketplace/resources/qml/PackageCardHeader.qml | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/plugins/Marketplace/PackageList.py b/plugins/Marketplace/PackageList.py index 133f42ebb0..7eb98b3233 100644 --- a/plugins/Marketplace/PackageList.py +++ b/plugins/Marketplace/PackageList.py @@ -286,11 +286,12 @@ class PackageList(ListModel): self._package_manager.removePackage(package_id) self.unsunscribeUserFromPackage(package_id) - def updatePackage(self, package_id: str) -> None: + def updatePackage(self, package_id: str, url: str) -> None: """Update a package from the Marketplace :param package_id: the package identification string """ self._package_manager.removePackage(package_id, force_add = not self._package_manager.isBundledPackage(package_id)) - url = self._package_manager.package_infosWithUpdate[package_id]["download_url"] + if url == "": + url = self._package_manager.package_infosWithUpdate[package_id]["download_url"] self.download(package_id, url, True) diff --git a/plugins/Marketplace/PackageModel.py b/plugins/Marketplace/PackageModel.py index dc62682aba..917a54ede6 100644 --- a/plugins/Marketplace/PackageModel.py +++ b/plugins/Marketplace/PackageModel.py @@ -295,7 +295,7 @@ class PackageModel(QObject): uninstallPackageTriggered = pyqtSignal(str) - updatePackageTriggered = pyqtSignal(str) + updatePackageTriggered = pyqtSignal(str, str) enablePackageTriggered = pyqtSignal(str) @@ -308,6 +308,11 @@ class PackageModel(QObject): self.setBusy(True) self.installPackageTriggered.emit(self.packageId, self.downloadURL) + @pyqtSlot() + def update(self): + self.setBusy(True) + self.updatePackageTriggered.emit(self.packageId, self.downloadURL) + @pyqtSlot() def uninstall(self): self.uninstallPackageTriggered.emit(self.packageId) diff --git a/plugins/Marketplace/resources/qml/PackageCardHeader.qml b/plugins/Marketplace/resources/qml/PackageCardHeader.qml index 921a57870b..3d99b23907 100644 --- a/plugins/Marketplace/resources/qml/PackageCardHeader.qml +++ b/plugins/Marketplace/resources/qml/PackageCardHeader.qml @@ -232,7 +232,7 @@ Item text: busy ? catalog.i18nc("@button", "Updating..."): catalog.i18nc("@button", "Update") - onClicked: packageData.install() + onClicked: packageData.update() } } } -- cgit v1.2.3