diff options
author | 2025-02-28 17:38:40 -0800 | |
---|---|---|
committer | 2025-02-28 17:38:40 -0800 | |
commit | 461084628cb8ceb3200801696487f76c5d66d95d (patch) | |
tree | 44ca3e6b042819f0cda0bb3274dd8561cdc4c4af | |
parent | 5a852f8979266483023ce4a4afbce331290803f0 (diff) | |
parent | 6318fca1a87285ca2079a2d2956528de13cc832c (diff) |
Merge "Dump identifier instead of window configuration on proto" into main
4 files changed, 44 insertions, 29 deletions
diff --git a/core/proto/android/server/windowmanagerservice.proto b/core/proto/android/server/windowmanagerservice.proto index a673ad7dfb34..5820c8e947c2 100644 --- a/core/proto/android/server/windowmanagerservice.proto +++ b/core/proto/android/server/windowmanagerservice.proto @@ -216,10 +216,10 @@ message DisplayContentProto { optional .com.android.server.wm.IdentifierProto resumed_activity = 24; repeated TaskProto tasks = 25 [deprecated=true]; optional bool display_ready = 26; - optional WindowStateProto input_method_target = 27; - optional WindowStateProto input_method_input_target = 28; - optional WindowStateProto input_method_control_target = 29; - optional WindowStateProto current_focus = 30; + optional WindowStateProto input_method_target = 27 [deprecated = true]; + optional WindowStateProto input_method_input_target = 28 [deprecated = true]; + optional WindowStateProto input_method_control_target = 29 [deprecated = true]; + optional WindowStateProto current_focus = 30 [deprecated = true]; optional ImeInsetsSourceProviderProto ime_insets_source_provider = 31; optional bool can_show_ime = 32 [deprecated=true]; @@ -231,6 +231,10 @@ message DisplayContentProto { repeated string sleep_tokens = 37; repeated .android.graphics.RectProto keep_clear_areas = 38; optional int32 min_size_of_resizeable_task_dp = 39; + optional IdentifierProto input_method_layering_target_identifier = 40; + optional IdentifierProto input_method_input_target_identifier = 41; + optional IdentifierProto input_method_control_target_identifier = 42; + optional IdentifierProto current_focus_identifier = 43; } /* represents DisplayArea object */ @@ -590,9 +594,9 @@ message InsetsSourceProviderProto { optional .android.graphics.RectProto frame = 2; optional .android.view.InsetsSourceControlProto fake_control = 3; optional .android.view.InsetsSourceControlProto control = 4; - optional WindowStateProto control_target = 5; - optional WindowStateProto pending_control_target = 6; - optional WindowStateProto fake_control_target = 7; + optional WindowStateProto control_target = 5 [deprecated = true]; + optional WindowStateProto pending_control_target = 6 [deprecated = true]; + optional WindowStateProto fake_control_target = 7 [deprecated = true]; optional .android.view.SurfaceControlProto captured_leash = 8; optional .android.graphics.RectProto ime_overridden_frame = 9 [deprecated=true]; optional bool is_leash_ready_for_dispatching = 10; @@ -601,15 +605,21 @@ message InsetsSourceProviderProto { optional bool seamless_rotating = 13; optional int64 finish_seamless_rotate_frame_number = 14; optional bool controllable = 15; - optional WindowStateProto source_window_state = 16; + optional WindowStateProto source_window_state = 16 [deprecated = true]; + + optional IdentifierProto control_target_identifier = 17; + optional IdentifierProto pending_control_target_identifier = 18; + optional IdentifierProto fake_control_target_identifier = 19; + optional IdentifierProto source_window_state_identifier = 20; } message ImeInsetsSourceProviderProto { option (.android.msg_privacy).dest = DEST_AUTOMATIC; optional InsetsSourceProviderProto insets_source_provider = 1; - optional WindowStateProto ime_target_from_ime = 2; + optional WindowStateProto ime_target_from_ime = 2 [deprecated = true]; optional bool is_ime_layout_drawn = 3 [deprecated=true]; + optional IdentifierProto ime_target_from_ime_identifier = 4; } message BackNavigationProto { diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 574ab05075c4..679fd0019ea8 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -108,7 +108,7 @@ import static com.android.server.policy.WindowManagerPolicy.FINISH_LAYOUT_REDO_W import static com.android.server.wm.ActivityRecord.State.RESUMED; import static com.android.server.wm.ActivityTaskManagerService.POWER_MODE_REASON_CHANGE_DISPLAY; import static com.android.server.wm.DisplayContentProto.APP_TRANSITION; -import static com.android.server.wm.DisplayContentProto.CURRENT_FOCUS; +import static com.android.server.wm.DisplayContentProto.CURRENT_FOCUS_IDENTIFIER; import static com.android.server.wm.DisplayContentProto.DISPLAY_FRAMES; import static com.android.server.wm.DisplayContentProto.DISPLAY_INFO; import static com.android.server.wm.DisplayContentProto.DISPLAY_READY; @@ -118,9 +118,9 @@ import static com.android.server.wm.DisplayContentProto.FOCUSED_APP; import static com.android.server.wm.DisplayContentProto.FOCUSED_ROOT_TASK_ID; import static com.android.server.wm.DisplayContentProto.ID; import static com.android.server.wm.DisplayContentProto.IME_POLICY; -import static com.android.server.wm.DisplayContentProto.INPUT_METHOD_CONTROL_TARGET; -import static com.android.server.wm.DisplayContentProto.INPUT_METHOD_INPUT_TARGET; -import static com.android.server.wm.DisplayContentProto.INPUT_METHOD_TARGET; +import static com.android.server.wm.DisplayContentProto.INPUT_METHOD_CONTROL_TARGET_IDENTIFIER; +import static com.android.server.wm.DisplayContentProto.INPUT_METHOD_INPUT_TARGET_IDENTIFIER; +import static com.android.server.wm.DisplayContentProto.INPUT_METHOD_LAYERING_TARGET_IDENTIFIER; import static com.android.server.wm.DisplayContentProto.IS_SLEEPING; import static com.android.server.wm.DisplayContentProto.KEEP_CLEAR_AREAS; import static com.android.server.wm.DisplayContentProto.MIN_SIZE_OF_RESIZEABLE_TASK_DP; @@ -3612,18 +3612,20 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp } if (mImeLayeringTarget != null) { - mImeLayeringTarget.dumpDebug(proto, INPUT_METHOD_TARGET, logLevel); + mImeLayeringTarget.writeIdentifierToProto( + proto, INPUT_METHOD_LAYERING_TARGET_IDENTIFIER); } - if (mImeInputTarget != null) { - mImeInputTarget.dumpProto(proto, INPUT_METHOD_INPUT_TARGET, logLevel); + if (mImeInputTarget != null && mImeInputTarget.getWindowState() != null) { + mImeInputTarget.getWindowState().writeIdentifierToProto( + proto, INPUT_METHOD_INPUT_TARGET_IDENTIFIER); } if (mImeControlTarget != null && mImeControlTarget.getWindow() != null) { - mImeControlTarget.getWindow().dumpDebug(proto, INPUT_METHOD_CONTROL_TARGET, - logLevel); + mImeControlTarget.getWindow().writeIdentifierToProto( + proto, INPUT_METHOD_CONTROL_TARGET_IDENTIFIER); } if (mCurrentFocus != null) { - mCurrentFocus.dumpDebug(proto, CURRENT_FOCUS, logLevel); + mCurrentFocus.writeIdentifierToProto(proto, CURRENT_FOCUS_IDENTIFIER); } if (mInsetsStateController != null) { mInsetsStateController.dumpDebug(proto, logLevel); diff --git a/services/core/java/com/android/server/wm/ImeInsetsSourceProvider.java b/services/core/java/com/android/server/wm/ImeInsetsSourceProvider.java index f52446ff494c..2a2ae12ab09b 100644 --- a/services/core/java/com/android/server/wm/ImeInsetsSourceProvider.java +++ b/services/core/java/com/android/server/wm/ImeInsetsSourceProvider.java @@ -22,7 +22,7 @@ import static android.view.InsetsSource.ID_IME; import static com.android.internal.protolog.WmProtoLogGroups.WM_DEBUG_IME; import static com.android.server.wm.DisplayContent.IME_TARGET_CONTROL; import static com.android.server.wm.DisplayContent.IME_TARGET_LAYERING; -import static com.android.server.wm.ImeInsetsSourceProviderProto.IME_TARGET_FROM_IME; +import static com.android.server.wm.ImeInsetsSourceProviderProto.IME_TARGET_FROM_IME_IDENTIFIER; import static com.android.server.wm.ImeInsetsSourceProviderProto.INSETS_SOURCE_PROVIDER; import static com.android.server.wm.WindowManagerService.H.UPDATE_MULTI_WINDOW_STACKS; @@ -774,7 +774,7 @@ final class ImeInsetsSourceProvider extends InsetsSourceProvider { final WindowState imeRequesterWindow = mImeRequester != null ? mImeRequester.getWindow() : null; if (imeRequesterWindow != null) { - imeRequesterWindow.dumpDebug(proto, IME_TARGET_FROM_IME, logLevel); + imeRequesterWindow.writeIdentifierToProto(proto, IME_TARGET_FROM_IME_IDENTIFIER); } proto.end(token); } diff --git a/services/core/java/com/android/server/wm/InsetsSourceProvider.java b/services/core/java/com/android/server/wm/InsetsSourceProvider.java index d1585d06ae40..b7489029768a 100644 --- a/services/core/java/com/android/server/wm/InsetsSourceProvider.java +++ b/services/core/java/com/android/server/wm/InsetsSourceProvider.java @@ -21,16 +21,16 @@ import static com.android.server.wm.InsetsSourceProviderProto.CAPTURED_LEASH; import static com.android.server.wm.InsetsSourceProviderProto.CLIENT_VISIBLE; import static com.android.server.wm.InsetsSourceProviderProto.CONTROL; import static com.android.server.wm.InsetsSourceProviderProto.CONTROLLABLE; -import static com.android.server.wm.InsetsSourceProviderProto.CONTROL_TARGET; +import static com.android.server.wm.InsetsSourceProviderProto.CONTROL_TARGET_IDENTIFIER; import static com.android.server.wm.InsetsSourceProviderProto.FAKE_CONTROL; -import static com.android.server.wm.InsetsSourceProviderProto.FAKE_CONTROL_TARGET; +import static com.android.server.wm.InsetsSourceProviderProto.FAKE_CONTROL_TARGET_IDENTIFIER; import static com.android.server.wm.InsetsSourceProviderProto.FRAME; import static com.android.server.wm.InsetsSourceProviderProto.IS_LEASH_READY_FOR_DISPATCHING; -import static com.android.server.wm.InsetsSourceProviderProto.PENDING_CONTROL_TARGET; +import static com.android.server.wm.InsetsSourceProviderProto.PENDING_CONTROL_TARGET_IDENTIFIER; import static com.android.server.wm.InsetsSourceProviderProto.SEAMLESS_ROTATING; import static com.android.server.wm.InsetsSourceProviderProto.SERVER_VISIBLE; import static com.android.server.wm.InsetsSourceProviderProto.SOURCE; -import static com.android.server.wm.InsetsSourceProviderProto.SOURCE_WINDOW_STATE; +import static com.android.server.wm.InsetsSourceProviderProto.SOURCE_WINDOW_STATE_IDENTIFIER; import static com.android.server.wm.SurfaceAnimator.ANIMATION_TYPE_INSETS_CONTROL; import android.annotation.NonNull; @@ -803,14 +803,16 @@ class InsetsSourceProvider { mControl.dumpDebug(proto, CONTROL); } if (mControlTarget != null && mControlTarget.getWindow() != null) { - mControlTarget.getWindow().dumpDebug(proto, CONTROL_TARGET, logLevel); + mControlTarget.getWindow().writeIdentifierToProto(proto, CONTROL_TARGET_IDENTIFIER); } if (mPendingControlTarget != null && mPendingControlTarget != mControlTarget && mPendingControlTarget.getWindow() != null) { - mPendingControlTarget.getWindow().dumpDebug(proto, PENDING_CONTROL_TARGET, logLevel); + mPendingControlTarget.getWindow().writeIdentifierToProto( + proto, PENDING_CONTROL_TARGET_IDENTIFIER); } if (mFakeControlTarget != null && mFakeControlTarget.getWindow() != null) { - mFakeControlTarget.getWindow().dumpDebug(proto, FAKE_CONTROL_TARGET, logLevel); + mFakeControlTarget.getWindow().writeIdentifierToProto( + proto, FAKE_CONTROL_TARGET_IDENTIFIER); } if (mAdapter != null && mAdapter.mCapturedLeash != null) { mAdapter.mCapturedLeash.dumpDebug(proto, CAPTURED_LEASH); @@ -821,7 +823,8 @@ class InsetsSourceProvider { proto.write(SEAMLESS_ROTATING, mSeamlessRotating); proto.write(CONTROLLABLE, mControllable); if (mWindowContainer != null && mWindowContainer.asWindowState() != null) { - mWindowContainer.asWindowState().dumpDebug(proto, SOURCE_WINDOW_STATE, logLevel); + mWindowContainer.asWindowState().writeIdentifierToProto( + proto, SOURCE_WINDOW_STATE_IDENTIFIER); } proto.end(token); } |