diff --git a/shell/loadedpluginsdialog.cpp b/shell/loadedpluginsdialog.cpp --- a/shell/loadedpluginsdialog.cpp +++ b/shell/loadedpluginsdialog.cpp @@ -131,11 +131,6 @@ delete pushButton; } - QList createItemWidgets(const QModelIndex &/*index*/) const override - { - return QList(); - } - QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override { int i = 5; @@ -194,8 +189,10 @@ painter->restore(); } - QList createItemWidgets() const + QList createItemWidgets(const QModelIndex &index) const override { + Q_UNUSED(index); + QPushButton *button = new QPushButton(); button->setIcon(QIcon::fromTheme(QStringLiteral("dialog-information"))); setBlockedEventTypes(button, QList() << QEvent::MouseButtonPress @@ -242,13 +239,12 @@ PluginsModel *m = static_cast(itemView()->model()); KDevelop::IPlugin *p = m->pluginForIndex(focusedIndex()); if (p) { -// TODO KF5: Port -// const K4AboutData *aboutData = p->componentData().aboutData(); -// if (!aboutData->programName().isEmpty()) { // Be sure the about data is not completely empty -// KAboutApplicationDialog aboutPlugin(aboutData, itemView()); -// aboutPlugin.exec(); -// return; -// } + KAboutData aboutData = KAboutData::fromPluginMetaData(pluginInfo(p)); + if (!aboutData.componentName().isEmpty()) { // Be sure the about data is not completely empty + KAboutApplicationDialog aboutPlugin(aboutData, itemView()); + aboutPlugin.exec(); + return; + } } } private: