diff -r 13a03f9eee6b -r 8c9013b363bc eric7/PluginManager/PluginRepositoryDialog.py --- a/eric7/PluginManager/PluginRepositoryDialog.py Wed Apr 20 15:10:04 2022 +0200 +++ b/eric7/PluginManager/PluginRepositoryDialog.py Fri Apr 22 16:43:25 2022 +0200 @@ -102,7 +102,7 @@ self.__updateButton = QToolButton(self) self.__updateButton.setIcon(UI.PixmapCache.getIcon("reload")) self.__updateButton.setToolTip(self.tr("Update")) - self.__updateButton.clicked.connect(self.updateList) + self.__updateButton.clicked.connect(self.__updateList) self.__actionButtonsLayout.addWidget(self.__updateButton) self.__downloadButton = QToolButton(self) @@ -186,6 +186,9 @@ self.pluginRepositoryFile = os.path.join(Utilities.getConfigDir(), "PluginRepository") + self.__pluginManager.pluginRepositoryFileDownloaded.connect( + self.__populateList) + # attributes for the network objects self.__networkManager = QNetworkAccessManager(self) self.__networkManager.proxyAuthenticationRequired.connect( @@ -246,7 +249,7 @@ @param button reference to the button pressed (QAbstractButton) """ if button == self.__updateButton: - self.updateList() + self.__updateList() elif button == self.__downloadButton: self.__downloadButtonClicked() elif button == self.__downloadInstallButton: @@ -373,14 +376,19 @@ self.__downloadInstallButton.setEnabled(enable and self.__online) self.__installButton.setEnabled(enable) - def updateList(self): + def reloadList(self): + """ + Public method to reload the list of plugins. """ - Public slot to download a new list and display the contents. + self.__populateList() + + @pyqtSlot() + def __updateList(self): + """ + Private slot to download a new list and display the contents. """ url = self.repositoryUrlEdit.text() - self.__downloadFile(url, - self.pluginRepositoryFile, - self.__downloadRepositoryFileDone) + self.__pluginManager.downLoadRepositoryFile(url=url) def __downloadRepositoryFileDone(self, status, filename): """