Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6318fca1 authored by Nataniel Borges's avatar Nataniel Borges
Browse files

Dump identifier instead of window configuration on proto

The current information is not useful, instead dump only the ID and name
of the target

Flag: TEST_ONLY
Test: atest FlickerTests (or WM CTS, both collect and read the traces)
Bug: 382466149
Change-Id: I94678fb93562d7ce6960cd743a7f0b8c7daf3ce5
parent 1ef2de7f
Loading
Loading
Loading
Loading
+19 −9
Original line number Diff line number Diff line
@@ -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 {
+12 −10
Original line number Diff line number Diff line
@@ -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;
@@ -3569,18 +3569,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);
+2 −2
Original line number Diff line number Diff line
@@ -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);
    }
+11 −8
Original line number Diff line number Diff line
@@ -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);
    }