Skip to content

Make KParts use KPluginMetaData instead of KAboutData

KPluginMetaData has been introduced as class dedicated for metadata about plugins, and leaving KAboutData for programs only. With KParts meanwhile having support for JSON-based metadata plugins, it is time to switch over the metadata API to KPluginMetaData also.

By history the class PartBase is base-class to both Part and MainWindow. Seems this is mainly for sharing the plugin implementation, less for enabling consumers to treat both via the PartBase class in one go.

KParts::MainWindow has no known subclass which makes uses of the componentData property. Instead all code relies on the default value of KXMLGUIClient::componentName to be QCoreApplication::applicationName().

KParts::Part subclasses do set the componentData, mainly for adapting the KXMLGUIClient::componentName value to the part name. There are only two consumers known to query the full KAboutData, Kontact as well as the Kate preview plugin both for showing the About dialog for the KPart used. Both those could easily switch to KPluginMetaData and using the dedicated KAboutPluginDialog instead.

Depends on: kcoreaddons!44 (merged)

@dfaure

Edited by Friedrich W. H. Kossebau

Merge request reports