c8d57aca3748c513ec4660199873bc9a81ced6f2
[src/agl-compositor.git] / grpc-proxy / agl_shell.proto
1 syntax = "proto3";
2 // using empty Response suitable better for forward compat
3 //import "google/protobuf/empty.proto";
4 package agl_shell_ipc;
5
6 service AglShellManagerService {
7        rpc ActivateApp(ActivateRequest)                 returns (ActivateResponse) {}
8        rpc DeactivateApp(DeactivateRequest)             returns (DeactivateResponse) {}
9        rpc SetAppSplit(SplitRequest)                    returns (SplitResponse) {}
10        rpc SetAppFloat(FloatRequest)                    returns (FloatResponse) {}
11        rpc SetAppFullscreen(FullscreenRequest)          returns (FullscreenResponse) {}
12        rpc AppStatusState(AppStateRequest)              returns (stream AppStateResponse) {}
13        rpc GetOutputs(OutputRequest)                    returns (ListOutputResponse) {}
14        rpc SetAppNormal(NormalRequest)                  returns (NormalResponse) {}
15        rpc SetAppOnOutput(AppOnOutputRequest)           returns (AppOnOutputResponse) {}
16        rpc SetAppPosition(AppPositionRequest)           returns (AppPositionResponse) {}
17        rpc SetAppScale(AppScaleRequest)                 returns (AppScaleResponse) {}
18 }
19
20 message ActivateRequest {
21        string app_id = 1;
22        string output_name = 2;
23 }
24
25 message ActivateResponse {
26 };
27
28
29 message DeactivateRequest {
30        string app_id = 1;
31 }
32
33 message DeactivateResponse {
34 }
35
36 message SplitRequest {
37        string app_id = 1;
38        int32 tile_orientation = 2;
39        int32 width = 3;
40        string output_name = 4;
41 }
42
43 message SplitResponse {
44 }
45
46 message FloatRequest {
47        string app_id = 1;
48        int32 x_pos = 2;
49        int32 y_pos = 3;
50 }
51
52 message FloatResponse {
53 }
54
55 message AppStateRequest {
56 }
57
58 message AppStateResponse {
59         int32 state = 1;
60         string app_id = 2;
61 }
62
63 message OutputRequest {
64 };
65
66 message OutputResponse {
67         string name = 1;
68 };
69
70 message ListOutputResponse {
71         repeated OutputResponse outputs = 1;
72 };
73
74 message NormalRequest {
75         string app_id = 1;
76 };
77
78 message NormalResponse {
79 };
80
81 message FullscreenRequest {
82         string app_id = 1;
83 };
84
85 message FullscreenResponse {
86 };
87
88 message AppOnOutputRequest {
89         string app_id = 1;
90         string output = 2;
91 };
92
93 message AppOnOutputResponse {
94 };
95
96 message AppPositionRequest {
97        string app_id = 1;
98        int32 x = 2;
99        int32 y = 3;
100 };
101
102 message AppPositionResponse {
103 };
104
105 message AppScaleRequest {
106        string app_id = 1;
107        int32 width = 2;
108        int32 height = 3;
109 };
110
111 message AppScaleResponse {
112 };