@ -21,6 +21,7 @@
# include "baloosearchrunner.h"
# include "baloosearchrunner.h"
# include <QAction>
# include <QIcon>
# include <QIcon>
# include <QDir>
# include <QDir>
# include <KRun>
# include <KRun>
@ -170,9 +171,30 @@ void SearchRunner::match(Plasma::RunnerContext& context)
void SearchRunner : : run ( const Plasma : : RunnerContext & , const Plasma : : QueryMatch & match )
void SearchRunner : : run ( const Plasma : : RunnerContext & , const Plasma : : QueryMatch & match )
{
{
const QUrl url = match . data ( ) . toUrl ( ) ;
const QUrl url = match . data ( ) . toUrl ( ) ;
if ( match . selectedAction ( ) ) {
if ( match . selectedAction ( ) - > data ( ) . toString ( ) = = QLatin1String ( " openParentDir " ) ) {
new KRun ( url . adjusted ( QUrl : : RemoveFilename ) , nullptr ) ;
return ;
}
}
new KRun ( url , 0 ) ;
new KRun ( url , 0 ) ;
}
}
QList < QAction * > SearchRunner : : actionsForMatch ( const Plasma : : QueryMatch & match )
{
Q_UNUSED ( match )
const QString openParentDirId = QStringLiteral ( " openParentDir " ) ;
if ( ! action ( openParentDirId ) ) {
( addAction ( openParentDirId , QIcon : : fromTheme ( QStringLiteral ( " document-open-folder " ) ) , i18n ( " Open Containing Folder " ) ) ) - > setData ( openParentDirId ) ;
}
return { action ( openParentDirId ) } ;
}
QMimeData * SearchRunner : : mimeDataForMatch ( const Plasma : : QueryMatch & match )
QMimeData * SearchRunner : : mimeDataForMatch ( const Plasma : : QueryMatch & match )
{
{
QMimeData * result = new QMimeData ( ) ;
QMimeData * result = new QMimeData ( ) ;