diff --git a/src/plugins/extensionmanager/extensionmanagerwidget.cpp b/src/plugins/extensionmanager/extensionmanagerwidget.cpp index a6a284d80fd..75aa4a723b7 100644 --- a/src/plugins/extensionmanager/extensionmanagerwidget.cpp +++ b/src/plugins/extensionmanager/extensionmanagerwidget.cpp @@ -721,6 +721,7 @@ void ExtensionManagerWidget::fetchAndInstallPlugin(const QUrl &url, const QStrin storage, NetworkQueryTask{onQuerySetup, onQueryDone}, Sync{onPluginInstallation}, + Sync{[this]() { updateView(m_extensionBrowser->currentIndex()); }}, NetworkQueryTask{onDownloadSetup, onDownloadDone}, }; diff --git a/src/plugins/extensionmanager/extensionsbrowser.cpp b/src/plugins/extensionmanager/extensionsbrowser.cpp index 222cd7b9542..fcc3a778b10 100644 --- a/src/plugins/extensionmanager/extensionsbrowser.cpp +++ b/src/plugins/extensionmanager/extensionsbrowser.cpp @@ -697,6 +697,11 @@ void ExtensionsBrowser::showEvent(QShowEvent *event) QWidget::showEvent(event); } +QModelIndex ExtensionsBrowser::currentIndex() const +{ + return d->selectionModel->currentIndex(); +} + void ExtensionsBrowser::fetchExtensions() { #ifdef WITH_TESTS diff --git a/src/plugins/extensionmanager/extensionsbrowser.h b/src/plugins/extensionmanager/extensionsbrowser.h index 620c581de71..8cb0d9d03ce 100644 --- a/src/plugins/extensionmanager/extensionsbrowser.h +++ b/src/plugins/extensionmanager/extensionsbrowser.h @@ -32,6 +32,8 @@ public: void showEvent(QShowEvent *event) override; + QModelIndex currentIndex() const; + signals: void itemSelected(const QModelIndex ¤t, const QModelIndex &previous);