1/* 2 * Copyright (C) 2017 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/app/statusbarmanager.proto"; 20import "frameworks/base/core/proto/android/content/activityinfo.proto"; 21import "frameworks/base/core/proto/android/content/configuration.proto"; 22import "frameworks/base/core/proto/android/graphics/rect.proto"; 23import "frameworks/base/core/proto/android/server/windowcontainerthumbnail.proto"; 24import "frameworks/base/core/proto/android/server/surfaceanimator.proto"; 25import "frameworks/base/core/proto/android/view/displaycutout.proto"; 26import "frameworks/base/core/proto/android/view/displayinfo.proto"; 27import "frameworks/base/core/proto/android/view/surface.proto"; 28import "frameworks/base/core/proto/android/view/windowlayoutparams.proto"; 29import "frameworks/base/core/proto/android/privacy.proto"; 30import "frameworks/base/core/proto/android/typedef.proto"; 31 32import "frameworks/base/core/proto/android/view/surfacecontrol.proto"; 33import "frameworks/base/core/proto/android/view/insetssource.proto"; 34import "frameworks/base/core/proto/android/view/insetssourcecontrol.proto"; 35 36import "frameworks/proto_logging/stats/enums/view/enums.proto"; 37 38package com.android.server.wm; 39 40option java_multiple_files = true; 41 42message WindowManagerServiceDumpProto { 43 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 44 45 optional WindowManagerPolicyProto policy = 1; 46 /* window hierarchy root */ 47 optional RootWindowContainerProto root_window_container = 2; 48 optional IdentifierProto focused_window = 3; 49 optional string focused_app = 4; 50 optional IdentifierProto input_method_window = 5; 51 optional bool display_frozen = 6; 52 optional int32 rotation = 7 [(.android.typedef) = "android.view.Surface.Rotation", deprecated=true]; 53 optional int32 last_orientation = 8 [(.android.typedef) = "android.content.pm.ActivityInfo.ScreenOrientation", deprecated=true]; 54 optional int32 focused_display_id = 9; 55 optional bool hard_keyboard_available = 10; 56 optional bool window_frames_valid = 11; 57} 58 59/* represents RootWindowContainer object */ 60message RootWindowContainerProto { 61 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 62 63 optional WindowContainerProto window_container = 1; 64 repeated DisplayContentProto displays = 2 [deprecated=true]; 65 reserved 3; // IdentifierProto windows 66 /* window references in top down z order */ 67 repeated WindowStateProto windows = 4 [deprecated=true]; 68 optional KeyguardControllerProto keyguard_controller = 5; 69 // Whether or not the home activity is the recents activity. This is needed for the CTS tests to 70 // know what activity types to check for when invoking splitscreen multi-window. 71 optional bool is_home_recents_component = 6; 72 repeated IdentifierProto pending_activities = 7 [deprecated=true]; 73 optional int32 default_min_size_resizable_task = 8 [deprecated=true]; 74} 75 76message BarControllerProto { 77 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 78 79 optional .android.app.StatusBarManagerProto.WindowState state = 1; 80 optional .android.app.StatusBarManagerProto.TransientWindowState transient_state = 2; 81} 82 83message WindowOrientationListenerProto { 84 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 85 86 optional bool enabled = 1; 87 optional .android.view.SurfaceProto.Rotation rotation = 2; 88} 89 90message KeyguardServiceDelegateProto { 91 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 92 93 optional bool showing = 1; 94 optional bool occluded = 2; 95 optional bool secure = 3; 96 enum ScreenState { 97 SCREEN_STATE_OFF = 0; 98 SCREEN_STATE_TURNING_ON = 1; 99 SCREEN_STATE_ON = 2; 100 SCREEN_STATE_TURNING_OFF = 3; 101 } 102 optional ScreenState screen_state = 4; 103 enum InteractiveState { 104 INTERACTIVE_STATE_SLEEP = 0; 105 INTERACTIVE_STATE_WAKING = 1; 106 INTERACTIVE_STATE_AWAKE = 2; 107 INTERACTIVE_STATE_GOING_TO_SLEEP = 3; 108 } 109 optional InteractiveState interactive_state = 5; 110} 111 112message KeyguardControllerProto { 113 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 114 115 optional bool keyguard_showing = 1; 116 repeated KeyguardOccludedProto keyguard_occluded_states = 2 [deprecated=true]; 117 optional bool aod_showing = 3; 118 repeated KeyguardPerDisplayProto keyguard_per_display = 4; 119 optional bool keyguard_going_away = 5; 120} 121 122message KeyguardOccludedProto { 123 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 124 125 optional int32 display_id = 1; 126 optional bool keyguard_occluded = 2; 127} 128 129message KeyguardPerDisplayProto { 130 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 131 132 optional int32 display_id = 1; 133 optional bool keyguard_showing = 2; 134 optional bool aod_showing = 3; 135 optional bool keyguard_occluded = 4; 136 optional bool keyguard_going_away = 5; 137} 138 139/* represents PhoneWindowManager */ 140message WindowManagerPolicyProto { 141 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 142 143 optional int32 last_system_ui_flags = 1 [deprecated=true]; 144 enum UserRotationMode { 145 USER_ROTATION_FREE = 0; 146 USER_ROTATION_LOCKED = 1; 147 } 148 optional UserRotationMode rotation_mode = 2; 149 optional .android.view.SurfaceProto.Rotation rotation = 3; 150 optional .android.content.ActivityInfoProto.ScreenOrientation orientation = 4; 151 optional bool screen_on_fully = 5; 152 optional bool keyguard_draw_complete = 6; 153 optional bool window_manager_draw_complete = 7; 154 optional string focused_app_token = 8 [deprecated=true]; 155 optional IdentifierProto focused_window = 9 [deprecated=true]; 156 optional IdentifierProto top_fullscreen_opaque_window = 10 [deprecated=true]; 157 optional IdentifierProto top_fullscreen_opaque_or_dimming_window = 11 [deprecated=true]; 158 optional bool keyguard_occluded = 12; 159 optional bool keyguard_occluded_changed = 13; 160 optional bool keyguard_occluded_pending = 14; 161 optional bool force_status_bar = 15 [deprecated=true]; 162 optional bool force_status_bar_from_keyguard = 16 [deprecated=true]; 163 optional BarControllerProto status_bar = 17 [deprecated=true]; 164 optional BarControllerProto navigation_bar = 18 [deprecated=true]; 165 optional WindowOrientationListenerProto orientation_listener = 19 [deprecated=true]; 166 optional KeyguardServiceDelegateProto keyguard_delegate = 20; 167} 168 169/* represents AppTransition */ 170message AppTransitionProto { 171 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 172 173 enum AppState { 174 APP_STATE_IDLE = 0; 175 APP_STATE_READY = 1; 176 APP_STATE_RUNNING = 2; 177 APP_STATE_TIMEOUT = 3; 178 } 179 optional AppState app_transition_state = 1; 180 181 optional .android.view.TransitionTypeEnum last_used_app_transition = 2; 182} 183 184/* represents DisplayContent object */ 185message DisplayContentProto { 186 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 187 188 // Use root_display_area instead 189 optional WindowContainerProto window_container = 1 [deprecated=true]; 190 optional int32 id = 2; 191 reserved 3; // RootTasks 192 optional DockedTaskDividerControllerProto docked_task_divider_controller = 4 [deprecated=true]; 193 // Will be removed soon. 194 optional PinnedTaskControllerProto pinned_task_controller = 5 [deprecated=true]; 195 /* non app windows */ 196 repeated WindowTokenProto above_app_windows = 6 [deprecated=true]; 197 repeated WindowTokenProto below_app_windows = 7 [deprecated=true]; 198 repeated WindowTokenProto ime_windows = 8 [deprecated=true]; 199 optional int32 dpi = 9; 200 optional .android.view.DisplayInfoProto display_info = 10; 201 optional int32 rotation = 11 [(.android.typedef) = "android.view.Surface.Rotation", deprecated=true]; 202 optional ScreenRotationAnimationProto screen_rotation_animation = 12; 203 optional DisplayFramesProto display_frames = 13; 204 optional int32 surface_size = 14 [deprecated=true]; 205 optional string focused_app = 15; 206 optional AppTransitionProto app_transition = 16; 207 repeated IdentifierProto opening_apps = 17; 208 repeated IdentifierProto closing_apps = 18; 209 repeated IdentifierProto changing_apps = 19; 210 repeated WindowTokenProto overlay_windows = 20 [deprecated=true]; 211 optional DisplayAreaProto root_display_area = 21; 212 213 optional bool single_task_instance = 22 [deprecated=true]; 214 optional int32 focused_root_task_id = 23; 215 optional .com.android.server.wm.IdentifierProto resumed_activity = 24; 216 repeated TaskProto tasks = 25 [deprecated=true]; 217 optional bool display_ready = 26; 218 optional WindowStateProto input_method_target = 27; 219 optional WindowStateProto input_method_input_target = 28; 220 optional WindowStateProto input_method_control_target = 29; 221 optional WindowStateProto current_focus = 30; 222 optional ImeInsetsSourceProviderProto ime_insets_source_provider = 31; 223 optional bool can_show_ime = 32 [deprecated=true]; 224 225 optional DisplayRotationProto display_rotation = 33; 226 optional int32 ime_policy = 34; 227 228 repeated InsetsSourceProviderProto insets_source_providers = 35; 229 optional bool is_sleeping = 36; 230 repeated string sleep_tokens = 37; 231 repeated .android.graphics.RectProto keep_clear_areas = 38; 232 optional int32 min_size_of_resizeable_task_dp = 39; 233} 234 235/* represents DisplayArea object */ 236message DisplayAreaProto { 237 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 238 239 optional WindowContainerProto window_container = 1; 240 optional string name = 2 [ (.android.privacy).dest = DEST_EXPLICIT ]; 241 repeated DisplayAreaChildProto children = 3 [deprecated=true]; 242 optional bool is_task_display_area = 4; 243 optional bool is_root_display_area = 5; 244 optional int32 feature_id = 6; 245 optional bool is_organized = 7; 246} 247 248/* represents a generic child of a DisplayArea */ 249message DisplayAreaChildProto { 250 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 251 252 /* At most one of the following should be present: */ 253 254 /* represents a DisplayArea child */ 255 optional DisplayAreaProto display_area = 1; 256 /* represents a WindowToken child */ 257 optional WindowTokenProto window = 2; 258 /* represents an unknown child - the class name is recorded */ 259 repeated string unknown = 3; 260} 261 262/* represents DisplayFrames */ 263message DisplayFramesProto { 264 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 265 266 optional .android.graphics.RectProto stable_bounds = 1 [deprecated=true]; 267 optional .android.graphics.RectProto dock = 2 [deprecated=true]; 268 optional .android.graphics.RectProto current = 3 [deprecated=true]; 269} 270 271message DisplayRotationProto { 272 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 273 274 optional int32 rotation = 1 [(.android.typedef) = "android.view.Surface.Rotation"]; 275 optional bool frozen_to_user_rotation = 2; 276 optional int32 user_rotation = 3 [(.android.typedef) = "android.view.Surface.Rotation"]; 277 optional int32 fixed_to_user_rotation_mode = 4; 278 optional int32 last_orientation = 5 [(.android.typedef) = "android.content.pm.ActivityInfo.ScreenOrientation"]; 279 optional bool is_fixed_to_user_rotation = 6; 280} 281 282/* represents DockedTaskDividerController */ 283message DockedTaskDividerControllerProto { 284 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 285 286 optional bool minimized_dock = 1 [deprecated=true]; 287} 288 289/* represents PinnedTaskController */ 290message PinnedTaskControllerProto { 291 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 292 293 optional .android.graphics.RectProto default_bounds = 1 [deprecated=true]; 294 optional .android.graphics.RectProto movement_bounds = 2 [deprecated=true]; 295} 296 297/* represents Task */ 298message TaskProto { 299 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 300 301 optional WindowContainerProto window_container = 1 [deprecated=true]; 302 optional int32 id = 2; 303 reserved 3; // activity 304 optional bool fills_parent = 4; 305 optional .android.graphics.RectProto bounds = 5; 306 optional .android.graphics.RectProto displayed_bounds = 6 [deprecated=true]; 307 optional bool defer_removal = 7; 308 optional int32 surface_width = 8; 309 optional int32 surface_height = 9; 310 311 repeated TaskProto tasks = 10 [deprecated=true]; 312 repeated ActivityRecordProto activities = 11 [deprecated=true]; 313 314 optional .com.android.server.wm.IdentifierProto resumed_activity = 12; 315 optional string real_activity = 13; 316 optional string orig_activity = 14; 317 318 optional int32 display_id = 15 [deprecated=true]; 319 optional int32 root_task_id = 16; 320 optional int32 activity_type = 17 [(.android.typedef) = "android.app.WindowConfiguration.ActivityType", deprecated=true] ; 321 optional int32 resize_mode = 18 [(.android.typedef) = "android.appwidget.AppWidgetProviderInfo.ResizeModeFlags"]; 322 optional int32 min_width = 19 [deprecated=true]; 323 optional int32 min_height = 20 [deprecated=true]; 324 325 optional .android.graphics.RectProto adjusted_bounds = 21; 326 optional .android.graphics.RectProto last_non_fullscreen_bounds = 22; 327 optional bool adjusted_for_ime = 23; 328 optional float adjust_ime_amount = 24; 329 optional float adjust_divider_amount = 25; 330 optional bool animating_bounds = 26 [deprecated = true]; 331 optional float minimize_amount = 27; 332 optional bool created_by_organizer = 28; 333 optional string affinity = 29; 334 optional bool has_child_pip_activity = 30; 335 optional TaskFragmentProto task_fragment = 31; 336} 337 338/* represents TaskFragment */ 339message TaskFragmentProto { 340 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 341 342 optional WindowContainerProto window_container = 1; 343 optional int32 display_id = 2; 344 optional int32 activity_type = 3 [(.android.typedef) = "android.app.WindowConfiguration.ActivityType"]; 345 optional int32 min_width = 4; 346 optional int32 min_height = 5; 347} 348 349/* represents ActivityRecordProto */ 350message ActivityRecordProto { 351 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 352 353 optional string name = 1 [ (.android.privacy).dest = DEST_EXPLICIT ]; 354 355 optional WindowTokenProto window_token = 2; 356 optional bool last_surface_showing = 3; 357 optional bool is_waiting_for_transition_start = 4; 358 optional bool is_animating = 5; 359 optional WindowContainerThumbnailProto thumbnail = 6; 360 optional bool fills_parent = 7; 361 optional bool app_stopped = 8; 362 optional bool visible_requested = 9; 363 optional bool client_visible = 10; 364 optional bool defer_hiding_client = 11; 365 optional bool reported_drawn = 12; 366 optional bool reported_visible = 13; 367 optional int32 num_interesting_windows = 14; 368 optional int32 num_drawn_windows = 15; 369 optional bool all_drawn = 16; 370 optional bool last_all_drawn = 17; 371 reserved 18; // removed 372 optional IdentifierProto starting_window = 19; 373 optional bool starting_displayed = 20; 374 optional bool starting_moved = 201; 375 optional bool visible_set_from_transferred_starting_window = 22; 376 repeated .android.graphics.RectProto frozen_bounds = 23 [deprecated=true]; 377 optional bool visible = 24; 378 reserved 25; // configuration_container 379 optional IdentifierProto identifier = 26 [deprecated=true]; 380 optional string state = 27 [(.android.privacy).dest = DEST_EXPLICIT]; 381 optional bool front_of_task = 28; 382 optional int32 proc_id = 29; 383 optional bool translucent = 30; 384 optional bool pip_auto_enter_enabled = 31; 385 optional bool in_size_compat_mode = 32; 386 optional float min_aspect_ratio = 33; 387 optional bool provides_max_bounds = 34; 388 optional bool enable_recents_screenshot = 35; 389 optional int32 last_drop_input_mode = 36; 390} 391 392/* represents WindowToken */ 393message WindowTokenProto { 394 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 395 396 optional WindowContainerProto window_container = 1; 397 optional int32 hash_code = 2; 398 repeated WindowStateProto windows = 3 [deprecated=true]; 399 optional bool waiting_to_show = 5; 400 optional bool paused = 6; 401} 402 403/* represents WindowState */ 404message WindowStateProto { 405 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 406 407 optional WindowContainerProto window_container = 1; 408 optional IdentifierProto identifier = 2 [deprecated=true]; 409 // Unique identifier of a DisplayContent stack. 410 optional int32 display_id = 3; 411 // Unique identifier for the task stack. 412 optional int32 stack_id = 4; 413 optional .android.view.WindowLayoutParamsProto attributes = 5; 414 optional .android.graphics.RectProto given_content_insets = 6; 415 optional .android.graphics.RectProto frame = 7 [deprecated=true]; 416 optional .android.graphics.RectProto containing_frame = 8 [deprecated=true]; 417 optional .android.graphics.RectProto parent_frame = 9 [deprecated=true]; 418 optional .android.graphics.RectProto content_frame = 10 [deprecated=true]; 419 optional .android.graphics.RectProto content_insets = 11 [deprecated=true]; 420 optional .android.graphics.RectProto surface_insets = 12; 421 optional WindowStateAnimatorProto animator = 13; 422 optional bool animating_exit = 14; 423 repeated WindowStateProto child_windows = 15 [deprecated=true]; 424 optional .android.graphics.RectProto surface_position = 16; 425 optional int32 requested_width = 18; 426 optional int32 requested_height = 19; 427 optional int32 view_visibility = 20 [(.android.typedef) = "android.view.View.Visibility"]; 428 optional int32 system_ui_visibility = 21 [deprecated=true]; 429 optional bool has_surface = 22; 430 optional bool is_ready_for_display = 23; 431 optional .android.graphics.RectProto display_frame = 24 [deprecated=true]; 432 optional .android.graphics.RectProto overscan_frame = 25 [deprecated=true]; 433 optional .android.graphics.RectProto visible_frame = 26 [deprecated=true]; 434 optional .android.graphics.RectProto decor_frame = 27 [deprecated=true]; 435 optional .android.graphics.RectProto outset_frame = 28 [deprecated=true]; 436 optional .android.graphics.RectProto overscan_insets = 29 [deprecated=true]; 437 optional .android.graphics.RectProto visible_insets = 30 [deprecated=true]; 438 optional .android.graphics.RectProto stable_insets = 31 [deprecated=true]; 439 optional .android.graphics.RectProto outsets = 32 [deprecated=true]; 440 optional .android.view.DisplayCutoutProto cutout = 33 [deprecated=true]; 441 optional bool remove_on_exit = 34; 442 optional bool destroying = 35; 443 optional bool removed = 36; 444 optional bool is_on_screen = 37; 445 optional bool is_visible = 38; 446 optional bool pending_seamless_rotation = 39; 447 optional int64 finished_seamless_rotation_frame = 40 [deprecated=true]; 448 optional WindowFramesProto window_frames = 41; 449 optional bool force_seamless_rotation = 42; 450 optional bool has_compat_scale = 43; 451 optional float global_scale = 44; 452 repeated .android.graphics.RectProto keep_clear_areas = 45; 453 repeated .android.graphics.RectProto unrestricted_keep_clear_areas = 46; 454} 455 456message IdentifierProto { 457 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 458 459 optional int32 hash_code = 1; 460 optional int32 user_id = 2; 461 // Either a component name/string (eg: "com.android.settings/.FallbackHome") 462 // or a window title ("NavigationBar"). 463 optional string title = 3 [ (.android.privacy).dest = DEST_EXPLICIT ]; 464} 465 466/* represents WindowStateAnimator */ 467message WindowStateAnimatorProto { 468 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 469 470 optional .android.graphics.RectProto last_clip_rect = 1; 471 optional WindowSurfaceControllerProto surface = 2; 472 enum DrawState { 473 NO_SURFACE = 0; 474 DRAW_PENDING = 1; 475 COMMIT_DRAW_PENDING = 2; 476 READY_TO_SHOW = 3; 477 HAS_DRAWN = 4; 478 } 479 optional DrawState draw_state = 3; 480 optional .android.graphics.RectProto system_decor_rect = 4; 481} 482 483/* represents WindowSurfaceController */ 484message WindowSurfaceControllerProto { 485 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 486 487 optional bool shown = 1; 488 optional int32 layer = 2; 489} 490 491/* represents ScreenRotationAnimation */ 492message ScreenRotationAnimationProto { 493 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 494 495 optional bool started = 1; 496 optional bool animation_running = 2; 497} 498 499/* represents WindowContainer */ 500message WindowContainerProto { 501 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 502 503 optional ConfigurationContainerProto configuration_container = 1; 504 optional int32 orientation = 2 [(.android.typedef) = "android.content.pm.ActivityInfo.ScreenOrientation"]; 505 optional bool visible = 3; 506 optional SurfaceAnimatorProto surface_animator = 4; 507 repeated WindowContainerChildProto children = 5; 508 optional IdentifierProto identifier = 6; 509 optional .android.view.SurfaceControlProto surface_control = 7; 510} 511 512/* represents a generic child of a WindowContainer */ 513message WindowContainerChildProto { 514 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 515 516 /* A window container can have multiple children of different types stored as 517 * a WindowContainerChildProto but each instance of WindowContainerChildProto 518 * can only contain a single type. 519 */ 520 /* We do not know the derived typ and the class is dumped 521 * as a WindowContainer */ 522 optional WindowContainerProto window_container = 2; 523 /* represents a DisplayContent child */ 524 optional DisplayContentProto display_content = 3; 525 /* represents a DisplayArea child */ 526 optional DisplayAreaProto display_area = 4; 527 /* represents a Task child */ 528 optional TaskProto task = 5; 529 /* represents an ActivityRecord child */ 530 optional ActivityRecordProto activity = 6; 531 /* represents a WindowToken child */ 532 optional WindowTokenProto window_token = 7; 533 /* represents a WindowState child */ 534 optional WindowStateProto window = 8; 535 /* represents a WindowState child */ 536 optional TaskFragmentProto task_fragment = 9; 537} 538 539/* represents ConfigurationContainer */ 540message ConfigurationContainerProto { 541 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 542 543 optional .android.content.ConfigurationProto override_configuration = 1; 544 optional .android.content.ConfigurationProto full_configuration = 2; 545 optional .android.content.ConfigurationProto merged_override_configuration = 3; 546} 547 548/* represents WindowFrames */ 549message WindowFramesProto { 550 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 551 552 optional .android.graphics.RectProto containing_frame = 1 [deprecated=true]; 553 optional .android.graphics.RectProto content_frame = 2 [deprecated=true]; 554 optional .android.graphics.RectProto decor_frame = 3 [deprecated=true]; 555 optional .android.graphics.RectProto display_frame = 4; 556 optional .android.graphics.RectProto frame = 5; 557 optional .android.graphics.RectProto outset_frame = 6; 558 optional .android.graphics.RectProto overscan_frame = 7 [deprecated=true]; 559 optional .android.graphics.RectProto parent_frame = 8; 560 optional .android.graphics.RectProto visible_frame = 9 [deprecated=true]; 561 optional .android.view.DisplayCutoutProto cutout = 10 [deprecated=true]; 562 optional .android.graphics.RectProto content_insets = 11 [deprecated=true]; 563 optional .android.graphics.RectProto overscan_insets = 12 [deprecated=true]; 564 optional .android.graphics.RectProto visible_insets = 13 [deprecated=true]; 565 optional .android.graphics.RectProto stable_insets = 14 [deprecated=true]; 566 optional .android.graphics.RectProto outsets = 15; 567 optional .android.graphics.RectProto compat_frame = 16; 568} 569 570message InsetsSourceProviderProto { 571 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 572 573 optional .android.view.InsetsSourceProto source = 1; 574 optional .android.graphics.RectProto frame = 2; 575 optional .android.view.InsetsSourceControlProto fake_control = 3; 576 optional .android.view.InsetsSourceControlProto control = 4; 577 optional WindowStateProto control_target = 5; 578 optional WindowStateProto pending_control_target = 6; 579 optional WindowStateProto fake_control_target = 7; 580 optional .android.view.SurfaceControlProto captured_leash = 8; 581 optional .android.graphics.RectProto ime_overridden_frame = 9 [deprecated=true]; 582 optional bool is_leash_ready_for_dispatching = 10; 583 optional bool client_visible = 11; 584 optional bool server_visible = 12; 585 optional bool seamless_rotating = 13; 586 optional int64 finish_seamless_rotate_frame_number = 14; 587 optional bool controllable = 15; 588} 589 590message ImeInsetsSourceProviderProto { 591 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 592 593 optional InsetsSourceProviderProto insets_source_provider = 1; 594 optional WindowStateProto ime_target_from_ime = 2; 595 optional bool is_ime_layout_drawn = 3; 596} 597