+ QAction* showOriginal = actionCollection()->addAction(QStringLiteral("show_original"));
+ showOriginal->setText(i18nc("@action:inmenu", "Show Original"));
+ showOriginal->setIcon(QIcon::fromTheme(QStringLiteral("document-open-folder")));
+ showOriginal->setEnabled(false);
+ connect(showOriginal, &QAction::triggered, [this]() {
+ const auto link = m_activeViewContainer->view()->selectedItems().at(0);
+ const auto linkLocationDir = QFileInfo(link.localPath()).absoluteDir();
+ auto linkDestination = link.linkDest();
+ if (QFileInfo(linkDestination).isRelative())
+ linkDestination = linkLocationDir.filePath(linkDestination);
+ if (QFileInfo(linkDestination).exists()) {
+ KIO::highlightInFileManager({QUrl::fromLocalFile(linkDestination).adjusted(QUrl::StripTrailingSlash)});
+ } else {
+ m_activeViewContainer->showMessage(
+ i18n("Could not access \"%1\".").arg(linkDestination), DolphinViewContainer::Warning);
+ }
+ });
+