diff --git a/src/Mod/AddonManager/AddonManager.py b/src/Mod/AddonManager/AddonManager.py index 5ff8546e65..9bb18a9c33 100644 --- a/src/Mod/AddonManager/AddonManager.py +++ b/src/Mod/AddonManager/AddonManager.py @@ -270,7 +270,6 @@ class AddonsInstaller(QtGui.QDialog): QtGui.QDesktopServices.openUrl(QtCore.QUrl(link, QtCore.QUrl.TolerantMode)) def install(self,repos=None): - self.buttonInstall.setEnabled(False) if self.tabWidget.currentIndex() == 0: idx = None if repos: @@ -282,6 +281,9 @@ class AddonsInstaller(QtGui.QDialog): else: idx = self.listWorkbenches.currentRow() if idx != None: + if hasattr(self,"install_worker"): + if self.install_worker.isRunning(): + return self.install_worker = InstallWorker(self.repos, idx) self.install_worker.info_label.connect(self.set_information_label) self.install_worker.progressbar_show.connect(self.show_progress_bar) @@ -293,7 +295,6 @@ class AddonsInstaller(QtGui.QDialog): macro = self.macros[self.listMacros.currentRow()] if len(macro) < 5: self.labelDescription.setText(translate("AddonsInstaller", "Unable to install")) - self.buttonInstall.setEnabled(True) return macroname = "Macro_"+macro[0]+".FCMacro" macroname = macroname.replace(" ","_") @@ -303,7 +304,6 @@ class AddonsInstaller(QtGui.QDialog): macrofile.close() self.labelDescription.setText(translate("AddonsInstaller", "Macro successfully installed. The macro is now available from the Macros dialog.")) self.update_status() - self.buttonInstall.setEnabled(True) def show_progress_bar(self, state): if state == True: