Compare commits

...

1 Commits

Author SHA1 Message Date
Nicolas Fella
945b27eca8 Add activation support to rooms runner
This is needed to raise the window when activating the runner action on Wayland
2023-09-23 19:39:03 +00:00
3 changed files with 7 additions and 2 deletions

View File

@@ -80,3 +80,4 @@ X-Plasma-DBusRunner-Service=org.kde.neochat
X-Plasma-DBusRunner-Path=/RoomRunner
X-Plasma-Request-Actions-Once=true
X-Plasma-Runner-Min-Letter-Count=3
X-Plasma-Runner-Has-Activation=true

View File

@@ -5,6 +5,8 @@
#include <QDBusMetaType>
#include <KWindowSystem>
#include "controller.h"
#include "neochatroom.h"
#include "roommanager.h"
@@ -80,10 +82,12 @@ RemoteMatches Runner::Match(const QString &searchTerm)
return matches;
}
void Runner::Run(const QString &id, const QString &actionId)
void Runner::Run(const QString &id, const QString &actionId, const QString &activationToken)
{
Q_UNUSED(actionId);
KWindowSystem::setCurrentXdgActivationToken(activationToken);
NeoChatRoom *room = qobject_cast<NeoChatRoom *>(Controller::instance().activeConnection()->room(id));
if (!room) {

View File

@@ -183,7 +183,7 @@ public:
/**
* @brief Handle action calls.
*/
Q_SCRIPTABLE void Run(const QString &id, const QString &actionId);
Q_SCRIPTABLE void Run(const QString &id, const QString &actionId, const QString &activationToken = QString());
private:
RemoteImage serializeImage(const QImage &image);