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