cb9f1919ab483e1b22fa1e715128acd78db4d93d
[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        string output_name = 3;
40 }
41
42 message SplitResponse {
43 }
44
45 message FloatRequest {
46        string app_id = 1;
47        int32 x_pos = 2;
48        int32 y_pos = 3;
49 }
50
51 message FloatResponse {
52 }
53
54 message AppStateRequest {
55 }
56
57 message AppStateResponse {
58         int32 state = 1;
59         string app_id = 2;
60 }
61
62 message OutputRequest {
63 };
64
65 message OutputResponse {
66         string name = 1;
67 };
68
69 message ListOutputResponse {
70         repeated OutputResponse outputs = 1;
71 };
72
73 message NormalRequest {
74         string app_id = 1;
75 };
76
77 message NormalResponse {
78 };
79
80 message FullscreenRequest {
81         string app_id = 1;
82 };
83
84 message FullscreenResponse {
85 };
86
87 message AppOnOutputRequest {
88         string app_id = 1;
89         string output = 2;
90 };
91
92 message AppOnOutputResponse {
93 };
94
95 message AppPositionRequest {
96        string app_id = 1;
97        int32 x = 2;
98        int32 y = 3;
99 };
100
101 message AppPositionResponse {
102 };
103
104 message AppScaleRequest {
105        string app_id = 1;
106        int32 width = 2;
107        int32 height = 3;
108 };
109
110 message AppScaleResponse {
111 };