1/*
2 * Copyright (C) 2018 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17syntax = "proto2";
18
19import "frameworks/base/core/proto/android/graphics/point.proto";
20import "frameworks/base/core/proto/android/view/remote_animation_target.proto";
21import "frameworks/base/core/proto/android/privacy.proto";
22
23package com.android.server.wm;
24option java_multiple_files = true;
25
26message AnimationAdapterProto {
27    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
28
29    optional LocalAnimationAdapterProto local = 1;
30    optional RemoteAnimationAdapterWrapperProto remote = 2;
31}
32
33/* represents RemoteAnimationAdapterWrapper */
34message RemoteAnimationAdapterWrapperProto {
35    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
36
37    optional .android.view.RemoteAnimationTargetProto target = 1;
38}
39
40/* represents LocalAnimationAdapter */
41message LocalAnimationAdapterProto {
42    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
43
44    optional AnimationSpecProto animation_spec = 1;
45}
46
47message AnimationSpecProto {
48    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
49
50    optional WindowAnimationSpecProto window = 1;
51    optional MoveAnimationSpecProto move = 2;
52    optional AlphaAnimationSpecProto alpha = 3;
53    optional RotationAnimationSpecProto rotate = 4;
54}
55
56/* represents WindowAnimationSpec */
57message WindowAnimationSpecProto {
58    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
59
60    optional string animation = 1;
61}
62
63/* represents MoveAnimationSpec*/
64message MoveAnimationSpecProto {
65    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
66
67    optional .android.graphics.PointProto from = 1;
68    optional .android.graphics.PointProto to = 2;
69    optional int64 duration_ms = 3;
70}
71
72/* represents AlphaAnimationSpec */
73message AlphaAnimationSpecProto {
74    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
75
76    optional float from = 1;
77    optional float to = 2;
78    optional int64 duration_ms = 3;
79}
80
81/* represents RotationAnimationSpec */
82message RotationAnimationSpecProto {
83    option (.android.msg_privacy).dest = DEST_AUTOMATIC;
84
85    optional float start_luma = 1;
86    optional float end_luma = 2;
87    optional int64 duration_ms = 3;
88}
89