1/* 2 * Copyright (C) 2021 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 = "proto3"; 18option optimize_for = LITE_RUNTIME; 19package android.surfaceflinger; 20 21message RegionProto { 22 reserved 1; // Previously: uint64 id 23 repeated RectProto rect = 2; 24} 25 26message RectProto { 27 int32 left = 1; 28 int32 top = 2; 29 int32 right = 3; 30 int32 bottom = 4; 31} 32 33message SizeProto { 34 int32 w = 1; 35 int32 h = 2; 36} 37 38message TransformProto { 39 float dsdx = 1; 40 float dtdx = 2; 41 float dsdy = 3; 42 float dtdy = 4; 43 int32 type = 5; 44} 45 46message ColorProto { 47 float r = 1; 48 float g = 2; 49 float b = 3; 50 float a = 4; 51} 52 53message InputWindowInfoProto { 54 uint32 layout_params_flags = 1; 55 int32 layout_params_type = 2; 56 RectProto frame = 3; 57 RegionProto touchable_region = 4; 58 59 int32 surface_inset = 5; 60 bool visible = 6; 61 bool can_receive_keys = 7 [deprecated = true]; 62 bool focusable = 8; 63 bool has_wallpaper = 9; 64 65 float global_scale_factor = 10; 66 float window_x_scale = 11 [deprecated = true]; 67 float window_y_scale = 12 [deprecated = true]; 68 69 int32 crop_layer_id = 13; 70 bool replace_touchable_region_with_crop = 14; 71 RectProto touchable_region_crop = 15; 72 TransformProto transform = 16; 73 uint32 input_config = 17; 74} 75 76message BlurRegion { 77 uint32 blur_radius = 1; 78 uint32 corner_radius_tl = 2; 79 uint32 corner_radius_tr = 3; 80 uint32 corner_radius_bl = 4; 81 float corner_radius_br = 5; 82 float alpha = 6; 83 int32 left = 7; 84 int32 top = 8; 85 int32 right = 9; 86 int32 bottom = 10; 87} 88 89message ColorTransformProto { 90 // This will be a 4x4 matrix of float values 91 repeated float val = 1; 92} 93