diff --git a/tabsrunner/tabsrunner.cpp b/tabsrunner/tabsrunner.cpp --- a/tabsrunner/tabsrunner.cpp +++ b/tabsrunner/tabsrunner.cpp @@ -106,11 +106,12 @@ QList matches; - // TODO why does it unwrap this? didn't we want a a(a{sv}) instead of a{sv}a{sv}a{sv}..? :/ - for (const auto &arg : reply.arguments()) { - QVariantHash tab; - // urgh? - arg.value() >> tab; + auto arg = reply.arguments().at(0).value(); + auto tabvs = qdbus_cast>(arg); + + for (const QVariant &tabv : tabvs) + { + auto tab = qdbus_cast(tabv.value()); // add browser name or window name or so to it maybe? const QString &text = tab.value(QStringLiteral("title")).toString();