diff --git a/python/pyplugin_installer/installer.py b/python/pyplugin_installer/installer.py index af546b5eaae0..deabb5d75cdc 100644 --- a/python/pyplugin_installer/installer.py +++ b/python/pyplugin_installer/installer.py @@ -361,14 +361,13 @@ def installPlugin(self, key, quiet=False, stable=True): settings = QgsSettings() settings.setValue("/PythonPlugins/" + plugin["id"], True) else: - settings = QgsSettings() - if settings.value("/PythonPlugins/" + key, False, type=bool): # plugin will be reloaded on the fly only if currently loaded - reloadPlugin(key) # unloadPlugin + loadPlugin + startPlugin - infoString = (self.tr("Plugin reinstalled successfully"), "") + infoString = (self.tr("Plugin reinstalled successfully"), "") + if pluginWasLoaded: + loadPlugin(plugin["id"]) + startPlugin(plugin["id"]) else: unloadPlugin(key) # Just for a case. Will exit quietly if really not loaded loadPlugin(key) - infoString = (self.tr("Plugin reinstalled successfully"), self.tr("Python plugin reinstalled.\nYou need to restart QGIS in order to reload it.")) if quiet: infoString = (None, None) QApplication.restoreOverrideCursor()