Refactor Native Messages (#4738)

* refactor: move ipc queue into its own class

* refactor: move windows.h related functions to AW

* refactor: make NM-Client methods static

* refactor: json access

* refactor: use struct initializer

* refactor: move `handleMessage` to anon-namespace

* refactor: clean-up includes

* refactor: move action handler to functions

* refactor: cleanup `handleSelect`

* fix: cleanup clang-tidy warnings

* chore: simplify json

* revert: keep handlers as methods

This is more readable and extensible.

* fix: typo

* fix: namespace

* fix: rename define

* refactor: `IpcQueue` to be simpler

* fix: rename cmake option

* fix: use variant when constructing

* fix: make it a ref

* fix: its a pair now
This commit is contained in:
nerix
2023-07-30 13:14:58 +02:00
committed by GitHub
parent c496a68633
commit 378aee7ab1
9 changed files with 301 additions and 186 deletions
+6 -4
View File
@@ -16,12 +16,12 @@ std::string &getNmQueueName(Paths &paths);
Atomic<boost::optional<QString>> &nmIpcError();
class NativeMessagingClient final
{
public:
namespace nm::client {
void sendMessage(const QByteArray &array);
void writeToCout(const QByteArray &array);
};
} // namespace nm::client
class NativeMessagingServer final
{
@@ -36,6 +36,8 @@ private:
private:
void handleMessage(const QJsonObject &root);
void handleSelect(const QJsonObject &root);
void handleDetach(const QJsonObject &root);
};
ReceiverThread thread;