diff --git a/applets/icon/iconapplet.cpp b/applets/icon/iconapplet.cpp index efc73122a..81ef4663a 100644 --- a/applets/icon/iconapplet.cpp +++ b/applets/icon/iconapplet.cpp @@ -362,7 +362,14 @@ void IconApplet::configure() m_configDialog = dialog; connect(dialog, &KPropertiesDialog::applied, this, [this] { - populate(); + KDesktopFile desktopFile(m_localPath); + if (desktopFile.hasLinkType()) { + // make sure to fully repopulate in case the user changed the Link URL + QFile::remove(m_localPath); + setUrl(QUrl(desktopFile.readUrl())); // calls populate() itself + } else { + populate(); + } }); dialog->setAttribute(Qt::WA_DeleteOnClose, true);