From 3832b592f57f1e3be1a1605675537fc5fb57eee7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20H=C3=B6rist?= <philipp@hoerist.com> Date: Sat, 4 Jan 2020 16:33:03 +0100 Subject: [PATCH] [plugin_installer] Handle case when no plugins are available --- plugin_installer/plugin_installer.py | 3 +++ plugin_installer/widget.py | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugin_installer/plugin_installer.py b/plugin_installer/plugin_installer.py index c4cdcbf7..b79fe8c4 100644 --- a/plugin_installer/plugin_installer.py +++ b/plugin_installer/plugin_installer.py @@ -161,6 +161,9 @@ class PluginInstaller(GajimPlugin): return plugin_list = parse_manifests_zip(data) + if not plugin_list: + log.warning('No plugins found in zip') + if self._available_page is None: return self._available_page.append_plugins(plugin_list) diff --git a/plugin_installer/widget.py b/plugin_installer/widget.py index 6a4141ff..6a5d9da3 100644 --- a/plugin_installer/widget.py +++ b/plugin_installer/widget.py @@ -58,7 +58,10 @@ class AvailablePage(Observable): def append_plugins(self, plugins): for plugin in plugins: self._ui.plugin_store.append(plugin.fields) - self._select_first_plugin() + + if plugins: + self._select_first_plugin() + self._update_install_button() self._ui.spinner.stop() self._ui.spinner.hide() -- GitLab