diff options
Diffstat (limited to 'src/search')
-rw-r--r-- | src/search/searchengine.cpp | 13 | ||||
-rw-r--r-- | src/search/searchengine.h | 3 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/search/searchengine.cpp b/src/search/searchengine.cpp index 38f063a4..8eecfa52 100644 --- a/src/search/searchengine.cpp +++ b/src/search/searchengine.cpp @@ -136,6 +136,19 @@ KService::Ptr SearchEngine::fromString(QString text) } +QString SearchEngine::extractQuery(QString text) +{ + QString query = text; + KService::Ptr engine = SearchEngine::fromString(text); + if (engine) + { + query = query.remove(0, text.indexOf(SearchEngine::delimiter()) + 1); + } + + return query; +} + + QString SearchEngine::buildQuery(KService::Ptr engine, QString text) { QString query = engine->property("Query").toString(); diff --git a/src/search/searchengine.h b/src/search/searchengine.h index e57b1a5c..aa7d7a8b 100644 --- a/src/search/searchengine.h +++ b/src/search/searchengine.h @@ -47,7 +47,8 @@ public: static KService::List favorites(); static KService::Ptr fromString(QString text); static QString buildQuery(KService::Ptr engine, QString text); - + static QString extractQuery(QString text); + private: static bool m_loaded; static QString m_delimiter; |