aboutsummaryrefslogtreecommitdiffstats
path: root/grpc-proxy/grpc-async-cb.cpp
diff options
context:
space:
mode:
authorMarius Vlad <marius.vlad@collabora.com>2023-07-27 16:37:15 +0300
committerMarius Vlad <marius.vlad@collabora.com>2023-08-29 13:31:20 +0000
commit2edba91d3eab0d7b3c490c12be1f9bc3b5255aa8 (patch)
treeacba33bedb176df245634e8b449b53db4a6fa735 /grpc-proxy/grpc-async-cb.cpp
parenta68408367cf5e254d981e1d43ba261b9aade6166 (diff)
grpc-proxy: Add dynamic floating window movement
This adds basic movement for floating type of windows. The window needs to be a floating type for this request to work out. For the agl-shell protocol, this adds a set_app_float() request while for gRPC it adds a SetAppPosition() request. Bug-AGL: SPEC-4863 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: I5ecc4257c3e84d15a8cabb183757753be37867f5
Diffstat (limited to 'grpc-proxy/grpc-async-cb.cpp')
-rw-r--r--grpc-proxy/grpc-async-cb.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/grpc-proxy/grpc-async-cb.cpp b/grpc-proxy/grpc-async-cb.cpp
index 1bb367a..92aaa3c 100644
--- a/grpc-proxy/grpc-async-cb.cpp
+++ b/grpc-proxy/grpc-async-cb.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright © 2022 Collabora, Ltd.
+ * Copyright © 2022, 2023 Collabora, Ltd.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
@@ -159,6 +159,18 @@ GrpcServiceImpl::SetAppOnOutput(grpc::CallbackServerContext *context,
}
grpc::ServerUnaryReactor *
+GrpcServiceImpl::SetAppPosition(grpc::CallbackServerContext *context,
+ const ::agl_shell_ipc::AppPositionRequest* request,
+ ::agl_shell_ipc::AppPositionResponse* /* response */)
+{
+ m_aglShell->SetAppPosition(request->app_id(), request->x(), request->y());
+
+ grpc::ServerUnaryReactor* reactor = context->DefaultReactor();
+ reactor->Finish(grpc::Status::OK);
+ return reactor;
+}
+
+grpc::ServerUnaryReactor *
GrpcServiceImpl::SetAppSplit(grpc::CallbackServerContext *context,
const ::agl_shell_ipc::SplitRequest* request,
::agl_shell_ipc::SplitResponse* /*response*/)