@@ -118,12 +118,23 @@ void Scope::setNoResultsHint(const QString& hint) {
118118 }
119119}
120120
121−void Scope::activate(const QString& /*uri*/)
121+void Scope::activate(const QVariant &uri, const QVariant &icon_hint, const QVariant &category,
122+ const QVariant &result_type, const QVariant &mimetype, const QVariant &title,
123+ const QVariant &comment, const QVariant &dnd_uri, const QVariant &metadata)
122124{
123− // TODO:
124− // we need to create unity::dash::LocalResult (see UnityCore/Result.h) and pass it to Activate;
125− // this requires entire row from the model, so we need row index rather than uri.
126− // m_unityScope->Activate(QByteArray::fromPercentEncoding(uri.toUtf8()).constData());
125+ unity::dash::LocalResult res;
126+ res.uri = uri.toString().toStdString();
127+ res.icon_hint = icon_hint.toString().toStdString();
128+ res.category_index = category.toUInt();
129+ res.result_type = result_type.toUInt();
130+ res.mimetype = mimetype.toString().toStdString();
131+ res.name = title.toString().toStdString();
132+ res.comment = comment.toString().toStdString();
133+ res.dnd_uri = dnd_uri.toString().toStdString();
134+
135+ //TODO metadata
136+
137+ m_unityScope->Activate(res);
127138}
128139
129140void Scope::onActivated(unity::dash::LocalResult const& result, unity::dash::ScopeHandledType type, unity::glib::HintsMap const&)