Update Winscope for TaskFragment
1. Add TaskFragment.ts
2. rename ActivityTask.ts to Task.ts
Bug: 190684677
Test: manual - run "yarn run dev" in winscope directory
click "dumnp state"
Change-Id: Ie7339af9e4906e38b73bcd01dd9fbf1d00d25a3b
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -5,4 +5,6 @@
|
|||||||
Thumbs.db
|
Thumbs.db
|
||||||
*.iml
|
*.iml
|
||||||
.idea/
|
.idea/
|
||||||
|
*.yarn/
|
||||||
|
.yarnrc
|
||||||
gen/
|
gen/
|
||||||
|
|||||||
@@ -24,8 +24,6 @@ const WindowManagerState = require('flicker').com.android.server.wm.traces.commo
|
|||||||
|
|
||||||
const Activity = require('flicker').com.android.server.wm.traces.common.
|
const Activity = require('flicker').com.android.server.wm.traces.common.
|
||||||
windowmanager.windows.Activity;
|
windowmanager.windows.Activity;
|
||||||
const ActivityTask = require('flicker').com.android.server.wm.traces.common.
|
|
||||||
windowmanager.windows.ActivityTask;
|
|
||||||
const Configuration = require('flicker').com.android.server.wm.traces.common.
|
const Configuration = require('flicker').com.android.server.wm.traces.common.
|
||||||
windowmanager.windows.Configuration;
|
windowmanager.windows.Configuration;
|
||||||
const ConfigurationContainer = require('flicker').com.android.server.wm.traces.common.
|
const ConfigurationContainer = require('flicker').com.android.server.wm.traces.common.
|
||||||
@@ -38,6 +36,10 @@ const KeyguardControllerState = require('flicker').com.android.server.wm.traces.
|
|||||||
windowmanager.windows.KeyguardControllerState;
|
windowmanager.windows.KeyguardControllerState;
|
||||||
const RootWindowContainer = require('flicker').com.android.server.wm.traces.common.
|
const RootWindowContainer = require('flicker').com.android.server.wm.traces.common.
|
||||||
windowmanager.windows.RootWindowContainer;
|
windowmanager.windows.RootWindowContainer;
|
||||||
|
const Task = require('flicker').com.android.server.wm.traces.common.
|
||||||
|
windowmanager.windows.Task;
|
||||||
|
const TaskFragment = require('flicker').com.android.server.wm.traces.common.
|
||||||
|
windowmanager.windows.TaskFragment;
|
||||||
const WindowConfiguration = require('flicker').com.android.server.wm.traces.common.
|
const WindowConfiguration = require('flicker').com.android.server.wm.traces.common.
|
||||||
windowmanager.windows.WindowConfiguration;
|
windowmanager.windows.WindowConfiguration;
|
||||||
const WindowContainer = require('flicker').com.android.server.wm.traces.common.
|
const WindowContainer = require('flicker').com.android.server.wm.traces.common.
|
||||||
@@ -130,13 +132,14 @@ function toTransform(proto) {
|
|||||||
|
|
||||||
export {
|
export {
|
||||||
Activity,
|
Activity,
|
||||||
ActivityTask,
|
|
||||||
Configuration,
|
Configuration,
|
||||||
ConfigurationContainer,
|
ConfigurationContainer,
|
||||||
DisplayArea,
|
DisplayArea,
|
||||||
DisplayContent,
|
DisplayContent,
|
||||||
KeyguardControllerState,
|
KeyguardControllerState,
|
||||||
RootWindowContainer,
|
RootWindowContainer,
|
||||||
|
Task,
|
||||||
|
TaskFragment,
|
||||||
WindowConfiguration,
|
WindowConfiguration,
|
||||||
WindowContainer,
|
WindowContainer,
|
||||||
WindowState,
|
WindowState,
|
||||||
|
|||||||
@@ -16,28 +16,29 @@
|
|||||||
|
|
||||||
import { getPropertiesForDisplay, shortenName } from '../mixin'
|
import { getPropertiesForDisplay, shortenName } from '../mixin'
|
||||||
import { asRawTreeViewObject } from '../../utils/diff.js'
|
import { asRawTreeViewObject } from '../../utils/diff.js'
|
||||||
import { ActivityTask, toRect } from "../common"
|
import { Task, toRect } from "../common"
|
||||||
import WindowContainer from "./WindowContainer"
|
import WindowContainer from "./WindowContainer"
|
||||||
|
|
||||||
ActivityTask.fromProto = function (proto, isActivityInTree: Boolean): ActivityTask {
|
Task.fromProto = function (proto, isActivityInTree: Boolean): Task {
|
||||||
if (proto == null) {
|
if (proto == null) {
|
||||||
return null
|
return null
|
||||||
} else {
|
} else {
|
||||||
const children = proto.windowContainer.children.reverse()
|
const windowContainerProto = proto?.taskFragment.windowContainer ?? proto.windowContainer
|
||||||
|
const children = windowContainerProto.children.reverse()
|
||||||
.filter(it => it != null)
|
.filter(it => it != null)
|
||||||
.map(it => WindowContainer.childrenFromProto(it, isActivityInTree))
|
.map(it => WindowContainer.childrenFromProto(it, isActivityInTree))
|
||||||
const windowContainer = WindowContainer.fromProto({proto: proto.windowContainer,
|
const windowContainer = WindowContainer.fromProto({proto: windowContainerProto,
|
||||||
children: children})
|
children: children})
|
||||||
if (windowContainer == null) {
|
if (windowContainer == null) {
|
||||||
throw "Window container should not be null: " + JSON.stringify(proto)
|
throw "Window container should not be null: " + JSON.stringify(proto)
|
||||||
}
|
}
|
||||||
const entry = new ActivityTask(
|
const entry = new Task(
|
||||||
proto.activityType,
|
proto?.taskFragment.activityType ?? proto.activityType,
|
||||||
proto.fillsParent,
|
proto.fillsParent,
|
||||||
toRect(proto.bounds),
|
toRect(proto.bounds),
|
||||||
proto.id,
|
proto.id,
|
||||||
proto.rootTaskId,
|
proto.rootTaskId,
|
||||||
proto.displayId,
|
proto.taskFragment.displayId,
|
||||||
toRect(proto.lastNonFullscreenBounds),
|
toRect(proto.lastNonFullscreenBounds),
|
||||||
proto.realActivity,
|
proto.realActivity,
|
||||||
proto.origActivity,
|
proto.origActivity,
|
||||||
@@ -47,8 +48,8 @@ ActivityTask.fromProto = function (proto, isActivityInTree: Boolean): ActivityTa
|
|||||||
proto.surfaceWidth,
|
proto.surfaceWidth,
|
||||||
proto.surfaceHeight,
|
proto.surfaceHeight,
|
||||||
proto.createdByOrganizer,
|
proto.createdByOrganizer,
|
||||||
proto.minWidth,
|
proto?.taskFragment.minWidth ?? proto.minWidth,
|
||||||
proto.minHeight,
|
proto?.taskFragment.minHeight ?? proto.minHeight,
|
||||||
windowContainer
|
windowContainer
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -62,4 +63,4 @@ ActivityTask.fromProto = function (proto, isActivityInTree: Boolean): ActivityTa
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default ActivityTask
|
export default Task
|
||||||
52
tools/winscope/src/flickerlib/windows/TaskFragment.ts
Normal file
52
tools/winscope/src/flickerlib/windows/TaskFragment.ts
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021, The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { getPropertiesForDisplay, shortenName } from '../mixin'
|
||||||
|
import { asRawTreeViewObject } from '../../utils/diff.js'
|
||||||
|
import { TaskFragment } from "../common"
|
||||||
|
import WindowContainer from "./WindowContainer"
|
||||||
|
|
||||||
|
TaskFragment.fromProto = function (proto, isActivityInTree: Boolean): TaskFragment {
|
||||||
|
if (proto == null) {
|
||||||
|
return null
|
||||||
|
} else {
|
||||||
|
const children = proto.windowContainer.children.reverse()
|
||||||
|
.filter(it => it != null)
|
||||||
|
.map(it => WindowContainer.childrenFromProto(it, isActivityInTree))
|
||||||
|
const windowContainer = WindowContainer.fromProto({proto: proto.windowContainer,
|
||||||
|
children: children})
|
||||||
|
if (windowContainer == null) {
|
||||||
|
throw "Window container should not be null: " + JSON.stringify(proto)
|
||||||
|
}
|
||||||
|
const entry = new TaskFragment(
|
||||||
|
proto.activityType,
|
||||||
|
proto.displayId,
|
||||||
|
proto.minWidth,
|
||||||
|
proto.minHeight,
|
||||||
|
windowContainer
|
||||||
|
)
|
||||||
|
|
||||||
|
entry.obj = getPropertiesForDisplay(proto, entry)
|
||||||
|
entry.kind = entry.constructor.name
|
||||||
|
entry.shortName = shortenName(entry.name)
|
||||||
|
entry.rawTreeViewObject = asRawTreeViewObject(entry)
|
||||||
|
|
||||||
|
console.warn("Created ", entry.kind, " stableId=", entry.stableId)
|
||||||
|
return entry
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default TaskFragment
|
||||||
@@ -29,7 +29,8 @@ import {
|
|||||||
import Activity from "./Activity"
|
import Activity from "./Activity"
|
||||||
import DisplayArea from "./DisplayArea"
|
import DisplayArea from "./DisplayArea"
|
||||||
import DisplayContent from "./DisplayContent"
|
import DisplayContent from "./DisplayContent"
|
||||||
import ActivityTask from "./ActivityTask"
|
import Task from "./Task"
|
||||||
|
import TaskFragment from "./TaskFragment"
|
||||||
import WindowState from "./WindowState"
|
import WindowState from "./WindowState"
|
||||||
import WindowToken from "./WindowToken"
|
import WindowToken from "./WindowToken"
|
||||||
|
|
||||||
@@ -70,7 +71,8 @@ WindowContainer.fromProto = function ({
|
|||||||
WindowContainer.childrenFromProto = function(proto, isActivityInTree: Boolean): WindowContainerChild {
|
WindowContainer.childrenFromProto = function(proto, isActivityInTree: Boolean): WindowContainerChild {
|
||||||
return DisplayContent.fromProto(proto.displayContent, isActivityInTree) ??
|
return DisplayContent.fromProto(proto.displayContent, isActivityInTree) ??
|
||||||
DisplayArea.fromProto(proto.displayArea, isActivityInTree) ??
|
DisplayArea.fromProto(proto.displayArea, isActivityInTree) ??
|
||||||
ActivityTask.fromProto(proto.task, isActivityInTree) ??
|
Task.fromProto(proto.task, isActivityInTree) ??
|
||||||
|
TaskFragment.fromProto(proto.taskFragment, isActivityInTree) ??
|
||||||
Activity.fromProto(proto.activity) ??
|
Activity.fromProto(proto.activity) ??
|
||||||
WindowToken.fromProto(proto.windowToken, isActivityInTree) ??
|
WindowToken.fromProto(proto.windowToken, isActivityInTree) ??
|
||||||
WindowState.fromProto(proto.window, isActivityInTree) ??
|
WindowState.fromProto(proto.window, isActivityInTree) ??
|
||||||
|
|||||||
Reference in New Issue
Block a user