1/* 2 * Copyright (C) 2024 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 19package perfetto.protos; 20 21import "protos/perfetto/trace/android/inputmethodservice/inputmethodservice.proto"; 22import "protos/perfetto/trace/android/server/inputmethod/inputmethodmanagerservice.proto"; 23import "protos/perfetto/trace/android/view/inputmethod/inputmethodmanager.proto"; 24import "protos/perfetto/trace/android/view/viewrootimpl.proto"; 25import "protos/perfetto/trace/android/view/insetscontroller.proto"; 26import "protos/perfetto/trace/android/view/imeinsetssourceconsumer.proto"; 27import "protos/perfetto/trace/android/view/inputmethod/editorinfo.proto"; 28import "protos/perfetto/trace/android/view/inputmethod/inputconnection.proto"; 29import "protos/perfetto/trace/android/view/imefocuscontroller.proto"; 30 31// One dump entry for clients that use InputMethod 32message InputMethodClientsTraceProto { 33 // elapsed realtime in nanos since boot of when this entry was logged 34 optional fixed64 elapsed_realtime_nanos = 1; 35 36 // where the trace originated 37 optional string where = 2; 38 39 optional ClientSideProto client = 3; 40 41 // groups together the dump from ime related client side classes 42 message ClientSideProto { 43 optional int32 display_id = 1; 44 optional InputMethodManagerProto input_method_manager = 2; 45 optional ViewRootImplProto view_root_impl = 3; 46 optional InsetsControllerProto insets_controller = 4; 47 optional ImeInsetsSourceConsumerProto ime_insets_source_consumer = 5; 48 optional EditorInfoProto editor_info = 6; 49 optional ImeFocusControllerProto ime_focus_controller = 7; 50 optional InputConnectionProto input_connection = 8; 51 optional InputConnectionCallProto input_connection_call = 9; 52 } 53} 54 55// One dump entry for InputMethodService 56message InputMethodServiceTraceProto { 57 // elapsed realtime in nanos since boot of when this entry was logged 58 optional fixed64 elapsed_realtime_nanos = 1; 59 60 // where the trace originated 61 optional string where = 2; 62 63 optional InputMethodServiceProto input_method_service = 3; 64} 65 66// One dump entry for InputMethodManagerService 67message InputMethodManagerServiceTraceProto { 68 // elapsed realtime in nanos since boot of when this entry was logged 69 optional fixed64 elapsed_realtime_nanos = 1; 70 71 // where the trace originated 72 optional string where = 2; 73 74 optional InputMethodManagerServiceProto input_method_manager_service = 3; 75}