diff --git a/src/lib/kaboutdata.cpp b/src/lib/kaboutdata.cpp --- a/src/lib/kaboutdata.cpp +++ b/src/lib/kaboutdata.cpp @@ -462,12 +462,6 @@ } d->organizationDomain = hostComponents.join(dotChar); - - // desktop file name is reverse domain name - std::reverse(hostComponents.begin(), hostComponents.end()); - hostComponents.append(_componentName); - - d->desktopFileName = hostComponents.join(dotChar); } KAboutData::KAboutData(const QString &_componentName, @@ -492,7 +486,6 @@ d->_licenseList.append(KAboutLicense(KAboutLicense::Unknown, this)); d->_bugAddress = "submit@bugs.kde.org"; d->organizationDomain = QStringLiteral("kde.org"); - d->desktopFileName = QStringLiteral("org.kde.%1").arg(d->_componentName); } KAboutData::~KAboutData() @@ -911,7 +904,19 @@ QString KAboutData::desktopFileName() const { - return d->desktopFileName; + if (!d->desktopFileName.isEmpty()) { + return d->desktopFileName; + } + + // create desktop file name based on org domain on the fly and return; + const QChar dotChar(QLatin1Char('.')); + QStringList hostComponents = d->organizationDomain.split(dotChar); + + // desktop file name is reverse domain name + std::reverse(hostComponents.begin(), hostComponents.end()); + hostComponents.append(componentName()); + + return hostComponents.join(dotChar); } class KAboutDataRegistry