Loading core/proto/android/server/windowmanagerservice.proto +35 −8 Original line number Diff line number Diff line Loading @@ -53,10 +53,10 @@ message RootWindowContainerProto { option (.android.msg_privacy).dest = DEST_AUTOMATIC; optional WindowContainerProto window_container = 1; repeated DisplayContentProto displays = 2; repeated DisplayContentProto displays = 2 [deprecated=true]; reserved 3; // IdentifierProto windows /* window references in top down z order */ repeated WindowStateProto windows = 4; repeated WindowStateProto windows = 4 [deprecated=true]; optional KeyguardControllerProto keyguard_controller = 5; // Whether or not the home activity is the recents activity. This is needed for the CTS tests to // know what activity types to check for when invoking splitscreen multi-window. Loading Loading @@ -192,7 +192,8 @@ message DisplayContentProto { optional bool single_task_instance = 22; optional int32 focused_root_task_id = 23; optional .com.android.server.wm.IdentifierProto resumed_activity = 24; repeated TaskProto tasks = 25; repeated TaskProto tasks = 25 [deprecated=true]; optional bool display_ready = 26; } /* represents DisplayArea object */ Loading @@ -201,7 +202,7 @@ message DisplayAreaProto { optional WindowContainerProto window_container = 1; optional string name = 2 [ (.android.privacy).dest = DEST_EXPLICIT ]; repeated DisplayAreaChildProto children = 3; repeated DisplayAreaChildProto children = 3 [deprecated=true]; } /* represents a generic child of a DisplayArea */ Loading Loading @@ -254,8 +255,8 @@ message TaskProto { optional int32 surface_width = 8; optional int32 surface_height = 9; repeated TaskProto tasks = 10; repeated ActivityRecordProto activities = 11; repeated TaskProto tasks = 10 [deprecated=true]; repeated ActivityRecordProto activities = 11 [deprecated=true]; optional .com.android.server.wm.IdentifierProto resumed_activity = 12; optional string real_activity = 13; Loading Loading @@ -321,7 +322,7 @@ message WindowTokenProto { optional WindowContainerProto window_container = 1; optional int32 hash_code = 2; repeated WindowStateProto windows = 3; repeated WindowStateProto windows = 3 [deprecated=true]; optional bool waiting_to_show = 5; optional bool paused = 6; } Loading @@ -346,7 +347,7 @@ message WindowStateProto { optional .android.graphics.RectProto surface_insets = 12; optional WindowStateAnimatorProto animator = 13; optional bool animating_exit = 14; repeated WindowStateProto child_windows = 15; repeated WindowStateProto child_windows = 15 [deprecated=true]; optional .android.graphics.RectProto surface_position = 16; optional int32 requested_width = 18; optional int32 requested_height = 19; Loading Loading @@ -426,6 +427,32 @@ message WindowContainerProto { optional int32 orientation = 2; optional bool visible = 3; optional SurfaceAnimatorProto surface_animator = 4; repeated WindowContainerChildProto children = 5; } /* represents a generic child of a WindowContainer */ message WindowContainerChildProto { option (.android.msg_privacy).dest = DEST_AUTOMATIC; /* A window container can have multiple children of different types stored as * a WindowContainerChildProto but each instance of WindowContainerChildProto * can only contain a single type. */ /* We do not know the derived typ and the class is dumped * as a WindowContainer */ optional WindowContainerProto window_container = 2; /* represents a DisplayContent child */ optional DisplayContentProto display_content = 3; /* represents a DisplayArea child */ optional DisplayAreaProto display_area = 4; /* represents a Task child */ optional TaskProto task = 5; /* represents an ActivityRecord child */ optional ActivityRecordProto activity = 6; /* represents a WindowToken child */ optional WindowTokenProto window_token = 7; /* represents a WindowState child */ optional WindowStateProto window = 8; } /* represents ConfigurationContainer */ Loading services/core/java/com/android/server/wm/ActivityRecord.java +6 −0 Original line number Diff line number Diff line Loading @@ -200,6 +200,7 @@ import static com.android.server.wm.TaskPersister.IMAGE_EXTENSION; import static com.android.server.wm.WindowContainer.AnimationFlags.CHILDREN; import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; import static com.android.server.wm.WindowContainerChildProto.ACTIVITY; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_ANIM; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYOUT_REPEATS; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_STARTING_WINDOW_VERBOSE; Loading Loading @@ -7449,6 +7450,11 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } } @Override long getProtoFieldId() { return ACTIVITY; } @Override public void dumpDebug(ProtoOutputStream proto, long fieldId, @WindowTraceLogLevel int logLevel) { Loading services/core/java/com/android/server/wm/ActivityStack.java +0 −13 Original line number Diff line number Diff line Loading @@ -90,7 +90,6 @@ import static com.android.server.wm.ActivityTaskManagerDebugConfig.TAG_WITH_CLAS import static com.android.server.wm.ActivityTaskManagerService.H.FIRST_ACTIVITY_STACK_MSG; import static com.android.server.wm.ActivityTaskManagerService.RELAUNCH_REASON_FREE_RESIZE; import static com.android.server.wm.ActivityTaskManagerService.RELAUNCH_REASON_WINDOWING_MODE_RESIZE; import static com.android.server.wm.TaskProto.ACTIVITIES; import static com.android.server.wm.TaskProto.ACTIVITY_TYPE; import static com.android.server.wm.TaskProto.ANIMATING_BOUNDS; import static com.android.server.wm.TaskProto.BOUNDS; Loading @@ -109,7 +108,6 @@ import static com.android.server.wm.TaskProto.RESUMED_ACTIVITY; import static com.android.server.wm.TaskProto.ROOT_TASK_ID; import static com.android.server.wm.TaskProto.SURFACE_HEIGHT; import static com.android.server.wm.TaskProto.SURFACE_WIDTH; import static com.android.server.wm.TaskProto.TASKS; import static com.android.server.wm.TaskProto.WINDOW_CONTAINER; import static com.android.server.wm.WindowContainer.AnimationFlags.CHILDREN; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; Loading Loading @@ -3918,17 +3916,6 @@ class ActivityStack extends Task { proto.write(DISPLAY_ID, getDisplayId()); proto.write(ROOT_TASK_ID, getRootTaskId()); for (int i = mChildren.size() - 1; i >= 0; --i) { final WindowContainer child = mChildren.get(i); if (child instanceof Task) { child.dumpDebug(proto, TASKS, logLevel); } else if (child instanceof ActivityRecord) { child.dumpDebug(proto, ACTIVITIES, logLevel); } else { throw new IllegalStateException("Unknown child type: " + child); } } if (mResumedActivity != null) { mResumedActivity.writeIdentifierToProto(proto, RESUMED_ACTIVITY); } Loading services/core/java/com/android/server/wm/DisplayArea.java +6 −19 Original line number Diff line number Diff line Loading @@ -23,13 +23,10 @@ import static android.view.WindowManager.TRANSIT_KEYGUARD_UNOCCLUDE; import static android.view.WindowManagerPolicyConstants.APPLICATION_LAYER; import static com.android.internal.util.Preconditions.checkState; import static com.android.server.wm.DisplayAreaChildProto.DISPLAY_AREA; import static com.android.server.wm.DisplayAreaChildProto.UNKNOWN; import static com.android.server.wm.DisplayAreaChildProto.WINDOW; import static com.android.server.wm.DisplayAreaProto.CHILDREN; import static com.android.server.wm.DisplayAreaProto.NAME; import static com.android.server.wm.DisplayAreaProto.WINDOW_CONTAINER; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ORIENTATION; import static com.android.server.wm.WindowContainerChildProto.DISPLAY_AREA; import android.graphics.Rect; import android.util.proto.ProtoOutputStream; Loading Loading @@ -111,24 +108,14 @@ public class DisplayArea<T extends WindowContainer> extends WindowContainer<T> { final long token = proto.start(fieldId); super.dumpDebug(proto, WINDOW_CONTAINER, logLevel); proto.write(NAME, mName); for (int i = 0; i < getChildCount(); i++) { final long childToken = proto.start(CHILDREN); final T child = getChildAt(i); if (child instanceof ActivityStack) { // TODO(display-area): Dump stacks & tasks here, instead of in DisplayContent's // dumpDebug. For now, skip them here to avoid dumping them as UNKNOWN. } else if (child instanceof WindowToken) { ((WindowToken) child).dumpDebug(proto, WINDOW, logLevel); } else if (child instanceof DisplayArea) { child.dumpDebug(proto, DISPLAY_AREA, logLevel); } else { proto.write(UNKNOWN, child.getClass().getSimpleName()); } proto.end(childToken); } proto.end(token); } @Override long getProtoFieldId() { return DISPLAY_AREA; } /** * DisplayArea that contains WindowTokens, and orders them according to their type. */ Loading services/core/java/com/android/server/wm/DisplayContent.java +8 −5 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import static com.android.server.wm.DisplayContentProto.APP_TRANSITION; import static com.android.server.wm.DisplayContentProto.CLOSING_APPS; 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; import static com.android.server.wm.DisplayContentProto.DPI; import static com.android.server.wm.DisplayContentProto.FOCUSED_APP; import static com.android.server.wm.DisplayContentProto.FOCUSED_ROOT_TASK_ID; Loading @@ -105,7 +106,6 @@ import static com.android.server.wm.DisplayContentProto.ROOT_DISPLAY_AREA; import static com.android.server.wm.DisplayContentProto.ROTATION; import static com.android.server.wm.DisplayContentProto.SCREEN_ROTATION_ANIMATION; import static com.android.server.wm.DisplayContentProto.SINGLE_TASK_INSTANCE; import static com.android.server.wm.DisplayContentProto.TASKS; import static com.android.server.wm.DisplayContentProto.WINDOW_CONTAINER; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ADD_REMOVE; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_APP_TRANSITIONS; Loading @@ -117,6 +117,7 @@ import static com.android.server.wm.ProtoLogGroup.WM_SHOW_TRANSACTIONS; import static com.android.server.wm.RootWindowContainer.TAG_STATES; import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; import static com.android.server.wm.WindowContainerChildProto.DISPLAY_CONTENT; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_DISPLAY; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_INPUT_METHOD; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYOUT; Loading Loading @@ -2837,10 +2838,6 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo proto.write(ID, mDisplayId); mRootDisplayArea.dumpDebug(proto, ROOT_DISPLAY_AREA, logLevel); for (int i = mTaskContainers.getChildCount() - 1; i >= 0; --i) { final ActivityStack stack = mTaskContainers.getChildAt(i); stack.dumpDebug(proto, TASKS, logLevel); } for (int i = mOverlayContainers.getChildCount() - 1; i >= 0; --i) { final WindowToken windowToken = mOverlayContainers.getChildAt(i); windowToken.dumpDebug(proto, OVERLAY_WINDOWS, logLevel); Loading Loading @@ -2875,10 +2872,16 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo } else { proto.write(FOCUSED_ROOT_TASK_ID, INVALID_TASK_ID); } proto.write(DISPLAY_READY, isReady()); proto.end(token); } @Override long getProtoFieldId() { return DISPLAY_CONTENT; } @Override public void dump(PrintWriter pw, String prefix, boolean dumpAll) { super.dump(pw, prefix, dumpAll); Loading Loading
core/proto/android/server/windowmanagerservice.proto +35 −8 Original line number Diff line number Diff line Loading @@ -53,10 +53,10 @@ message RootWindowContainerProto { option (.android.msg_privacy).dest = DEST_AUTOMATIC; optional WindowContainerProto window_container = 1; repeated DisplayContentProto displays = 2; repeated DisplayContentProto displays = 2 [deprecated=true]; reserved 3; // IdentifierProto windows /* window references in top down z order */ repeated WindowStateProto windows = 4; repeated WindowStateProto windows = 4 [deprecated=true]; optional KeyguardControllerProto keyguard_controller = 5; // Whether or not the home activity is the recents activity. This is needed for the CTS tests to // know what activity types to check for when invoking splitscreen multi-window. Loading Loading @@ -192,7 +192,8 @@ message DisplayContentProto { optional bool single_task_instance = 22; optional int32 focused_root_task_id = 23; optional .com.android.server.wm.IdentifierProto resumed_activity = 24; repeated TaskProto tasks = 25; repeated TaskProto tasks = 25 [deprecated=true]; optional bool display_ready = 26; } /* represents DisplayArea object */ Loading @@ -201,7 +202,7 @@ message DisplayAreaProto { optional WindowContainerProto window_container = 1; optional string name = 2 [ (.android.privacy).dest = DEST_EXPLICIT ]; repeated DisplayAreaChildProto children = 3; repeated DisplayAreaChildProto children = 3 [deprecated=true]; } /* represents a generic child of a DisplayArea */ Loading Loading @@ -254,8 +255,8 @@ message TaskProto { optional int32 surface_width = 8; optional int32 surface_height = 9; repeated TaskProto tasks = 10; repeated ActivityRecordProto activities = 11; repeated TaskProto tasks = 10 [deprecated=true]; repeated ActivityRecordProto activities = 11 [deprecated=true]; optional .com.android.server.wm.IdentifierProto resumed_activity = 12; optional string real_activity = 13; Loading Loading @@ -321,7 +322,7 @@ message WindowTokenProto { optional WindowContainerProto window_container = 1; optional int32 hash_code = 2; repeated WindowStateProto windows = 3; repeated WindowStateProto windows = 3 [deprecated=true]; optional bool waiting_to_show = 5; optional bool paused = 6; } Loading @@ -346,7 +347,7 @@ message WindowStateProto { optional .android.graphics.RectProto surface_insets = 12; optional WindowStateAnimatorProto animator = 13; optional bool animating_exit = 14; repeated WindowStateProto child_windows = 15; repeated WindowStateProto child_windows = 15 [deprecated=true]; optional .android.graphics.RectProto surface_position = 16; optional int32 requested_width = 18; optional int32 requested_height = 19; Loading Loading @@ -426,6 +427,32 @@ message WindowContainerProto { optional int32 orientation = 2; optional bool visible = 3; optional SurfaceAnimatorProto surface_animator = 4; repeated WindowContainerChildProto children = 5; } /* represents a generic child of a WindowContainer */ message WindowContainerChildProto { option (.android.msg_privacy).dest = DEST_AUTOMATIC; /* A window container can have multiple children of different types stored as * a WindowContainerChildProto but each instance of WindowContainerChildProto * can only contain a single type. */ /* We do not know the derived typ and the class is dumped * as a WindowContainer */ optional WindowContainerProto window_container = 2; /* represents a DisplayContent child */ optional DisplayContentProto display_content = 3; /* represents a DisplayArea child */ optional DisplayAreaProto display_area = 4; /* represents a Task child */ optional TaskProto task = 5; /* represents an ActivityRecord child */ optional ActivityRecordProto activity = 6; /* represents a WindowToken child */ optional WindowTokenProto window_token = 7; /* represents a WindowState child */ optional WindowStateProto window = 8; } /* represents ConfigurationContainer */ Loading
services/core/java/com/android/server/wm/ActivityRecord.java +6 −0 Original line number Diff line number Diff line Loading @@ -200,6 +200,7 @@ import static com.android.server.wm.TaskPersister.IMAGE_EXTENSION; import static com.android.server.wm.WindowContainer.AnimationFlags.CHILDREN; import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; import static com.android.server.wm.WindowContainerChildProto.ACTIVITY; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_ANIM; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYOUT_REPEATS; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_STARTING_WINDOW_VERBOSE; Loading Loading @@ -7449,6 +7450,11 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A } } @Override long getProtoFieldId() { return ACTIVITY; } @Override public void dumpDebug(ProtoOutputStream proto, long fieldId, @WindowTraceLogLevel int logLevel) { Loading
services/core/java/com/android/server/wm/ActivityStack.java +0 −13 Original line number Diff line number Diff line Loading @@ -90,7 +90,6 @@ import static com.android.server.wm.ActivityTaskManagerDebugConfig.TAG_WITH_CLAS import static com.android.server.wm.ActivityTaskManagerService.H.FIRST_ACTIVITY_STACK_MSG; import static com.android.server.wm.ActivityTaskManagerService.RELAUNCH_REASON_FREE_RESIZE; import static com.android.server.wm.ActivityTaskManagerService.RELAUNCH_REASON_WINDOWING_MODE_RESIZE; import static com.android.server.wm.TaskProto.ACTIVITIES; import static com.android.server.wm.TaskProto.ACTIVITY_TYPE; import static com.android.server.wm.TaskProto.ANIMATING_BOUNDS; import static com.android.server.wm.TaskProto.BOUNDS; Loading @@ -109,7 +108,6 @@ import static com.android.server.wm.TaskProto.RESUMED_ACTIVITY; import static com.android.server.wm.TaskProto.ROOT_TASK_ID; import static com.android.server.wm.TaskProto.SURFACE_HEIGHT; import static com.android.server.wm.TaskProto.SURFACE_WIDTH; import static com.android.server.wm.TaskProto.TASKS; import static com.android.server.wm.TaskProto.WINDOW_CONTAINER; import static com.android.server.wm.WindowContainer.AnimationFlags.CHILDREN; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; Loading Loading @@ -3918,17 +3916,6 @@ class ActivityStack extends Task { proto.write(DISPLAY_ID, getDisplayId()); proto.write(ROOT_TASK_ID, getRootTaskId()); for (int i = mChildren.size() - 1; i >= 0; --i) { final WindowContainer child = mChildren.get(i); if (child instanceof Task) { child.dumpDebug(proto, TASKS, logLevel); } else if (child instanceof ActivityRecord) { child.dumpDebug(proto, ACTIVITIES, logLevel); } else { throw new IllegalStateException("Unknown child type: " + child); } } if (mResumedActivity != null) { mResumedActivity.writeIdentifierToProto(proto, RESUMED_ACTIVITY); } Loading
services/core/java/com/android/server/wm/DisplayArea.java +6 −19 Original line number Diff line number Diff line Loading @@ -23,13 +23,10 @@ import static android.view.WindowManager.TRANSIT_KEYGUARD_UNOCCLUDE; import static android.view.WindowManagerPolicyConstants.APPLICATION_LAYER; import static com.android.internal.util.Preconditions.checkState; import static com.android.server.wm.DisplayAreaChildProto.DISPLAY_AREA; import static com.android.server.wm.DisplayAreaChildProto.UNKNOWN; import static com.android.server.wm.DisplayAreaChildProto.WINDOW; import static com.android.server.wm.DisplayAreaProto.CHILDREN; import static com.android.server.wm.DisplayAreaProto.NAME; import static com.android.server.wm.DisplayAreaProto.WINDOW_CONTAINER; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ORIENTATION; import static com.android.server.wm.WindowContainerChildProto.DISPLAY_AREA; import android.graphics.Rect; import android.util.proto.ProtoOutputStream; Loading Loading @@ -111,24 +108,14 @@ public class DisplayArea<T extends WindowContainer> extends WindowContainer<T> { final long token = proto.start(fieldId); super.dumpDebug(proto, WINDOW_CONTAINER, logLevel); proto.write(NAME, mName); for (int i = 0; i < getChildCount(); i++) { final long childToken = proto.start(CHILDREN); final T child = getChildAt(i); if (child instanceof ActivityStack) { // TODO(display-area): Dump stacks & tasks here, instead of in DisplayContent's // dumpDebug. For now, skip them here to avoid dumping them as UNKNOWN. } else if (child instanceof WindowToken) { ((WindowToken) child).dumpDebug(proto, WINDOW, logLevel); } else if (child instanceof DisplayArea) { child.dumpDebug(proto, DISPLAY_AREA, logLevel); } else { proto.write(UNKNOWN, child.getClass().getSimpleName()); } proto.end(childToken); } proto.end(token); } @Override long getProtoFieldId() { return DISPLAY_AREA; } /** * DisplayArea that contains WindowTokens, and orders them according to their type. */ Loading
services/core/java/com/android/server/wm/DisplayContent.java +8 −5 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import static com.android.server.wm.DisplayContentProto.APP_TRANSITION; import static com.android.server.wm.DisplayContentProto.CLOSING_APPS; 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; import static com.android.server.wm.DisplayContentProto.DPI; import static com.android.server.wm.DisplayContentProto.FOCUSED_APP; import static com.android.server.wm.DisplayContentProto.FOCUSED_ROOT_TASK_ID; Loading @@ -105,7 +106,6 @@ import static com.android.server.wm.DisplayContentProto.ROOT_DISPLAY_AREA; import static com.android.server.wm.DisplayContentProto.ROTATION; import static com.android.server.wm.DisplayContentProto.SCREEN_ROTATION_ANIMATION; import static com.android.server.wm.DisplayContentProto.SINGLE_TASK_INSTANCE; import static com.android.server.wm.DisplayContentProto.TASKS; import static com.android.server.wm.DisplayContentProto.WINDOW_CONTAINER; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ADD_REMOVE; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_APP_TRANSITIONS; Loading @@ -117,6 +117,7 @@ import static com.android.server.wm.ProtoLogGroup.WM_SHOW_TRANSACTIONS; import static com.android.server.wm.RootWindowContainer.TAG_STATES; import static com.android.server.wm.WindowContainer.AnimationFlags.PARENTS; import static com.android.server.wm.WindowContainer.AnimationFlags.TRANSITION; import static com.android.server.wm.WindowContainerChildProto.DISPLAY_CONTENT; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_DISPLAY; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_INPUT_METHOD; import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYOUT; Loading Loading @@ -2837,10 +2838,6 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo proto.write(ID, mDisplayId); mRootDisplayArea.dumpDebug(proto, ROOT_DISPLAY_AREA, logLevel); for (int i = mTaskContainers.getChildCount() - 1; i >= 0; --i) { final ActivityStack stack = mTaskContainers.getChildAt(i); stack.dumpDebug(proto, TASKS, logLevel); } for (int i = mOverlayContainers.getChildCount() - 1; i >= 0; --i) { final WindowToken windowToken = mOverlayContainers.getChildAt(i); windowToken.dumpDebug(proto, OVERLAY_WINDOWS, logLevel); Loading Loading @@ -2875,10 +2872,16 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo } else { proto.write(FOCUSED_ROOT_TASK_ID, INVALID_TASK_ID); } proto.write(DISPLAY_READY, isReady()); proto.end(token); } @Override long getProtoFieldId() { return DISPLAY_CONTENT; } @Override public void dump(PrintWriter pw, String prefix, boolean dumpAll) { super.dump(pw, prefix, dumpAll); Loading