summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2021-06-19 03:02:07 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2021-06-19 03:02:07 +0000
commitf276a30c1a177efe423ca8f0bf74c30a85aaf95e (patch)
treee8b5e9646ec79ec2900d22c5881230f4ef70de02
parente22a2787edf6562f78ad1c28455e5fa4158db32b (diff)
parent92d1bda2a2babca64d29e1cfc49d7c6031465011 (diff)
downloaddevelopment-f276a30c1a177efe423ca8f0bf74c30a85aaf95e.tar.gz
Snap for 7472272 from 92d1bda2a2babca64d29e1cfc49d7c6031465011 to sc-v2-release
Change-Id: I882512ed5fb6e77e58d694882b5af94f115a0ecf
-rw-r--r--.gitignore2
-rw-r--r--tools/winscope/src/flickerlib/common.js9
-rw-r--r--tools/winscope/src/flickerlib/windows/Task.ts (renamed from tools/winscope/src/flickerlib/windows/ActivityTask.ts)21
-rw-r--r--tools/winscope/src/flickerlib/windows/TaskFragment.ts52
-rw-r--r--tools/winscope/src/flickerlib/windows/WindowContainer.ts6
5 files changed, 75 insertions, 15 deletions
diff --git a/.gitignore b/.gitignore
index 42494a2f4..f7eb85bdb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,4 +5,6 @@
Thumbs.db
*.iml
.idea/
+*.yarn/
+.yarnrc
gen/
diff --git a/tools/winscope/src/flickerlib/common.js b/tools/winscope/src/flickerlib/common.js
index 7e329f18e..c439ed56d 100644
--- a/tools/winscope/src/flickerlib/common.js
+++ b/tools/winscope/src/flickerlib/common.js
@@ -24,8 +24,6 @@ const WindowManagerState = require('flicker').com.android.server.wm.traces.commo
const Activity = require('flicker').com.android.server.wm.traces.common.
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.
windowmanager.windows.Configuration;
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;
const RootWindowContainer = require('flicker').com.android.server.wm.traces.common.
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.
windowmanager.windows.WindowConfiguration;
const WindowContainer = require('flicker').com.android.server.wm.traces.common.
@@ -130,13 +132,14 @@ function toTransform(proto) {
export {
Activity,
- ActivityTask,
Configuration,
ConfigurationContainer,
DisplayArea,
DisplayContent,
KeyguardControllerState,
RootWindowContainer,
+ Task,
+ TaskFragment,
WindowConfiguration,
WindowContainer,
WindowState,
diff --git a/tools/winscope/src/flickerlib/windows/ActivityTask.ts b/tools/winscope/src/flickerlib/windows/Task.ts
index b29aa793a..7159f313e 100644
--- a/tools/winscope/src/flickerlib/windows/ActivityTask.ts
+++ b/tools/winscope/src/flickerlib/windows/Task.ts
@@ -16,28 +16,29 @@
import { getPropertiesForDisplay, shortenName } from '../mixin'
import { asRawTreeViewObject } from '../../utils/diff.js'
-import { ActivityTask, toRect } from "../common"
+import { Task, toRect } from "../common"
import WindowContainer from "./WindowContainer"
-ActivityTask.fromProto = function (proto, isActivityInTree: Boolean): ActivityTask {
+Task.fromProto = function (proto, isActivityInTree: Boolean): Task {
if (proto == null) {
return null
} else {
- const children = proto.windowContainer.children.reverse()
+ const windowContainerProto = proto?.taskFragment.windowContainer ?? proto.windowContainer
+ const children = windowContainerProto.children.reverse()
.filter(it => it != null)
.map(it => WindowContainer.childrenFromProto(it, isActivityInTree))
- const windowContainer = WindowContainer.fromProto({proto: proto.windowContainer,
+ const windowContainer = WindowContainer.fromProto({proto: windowContainerProto,
children: children})
if (windowContainer == null) {
throw "Window container should not be null: " + JSON.stringify(proto)
}
- const entry = new ActivityTask(
- proto.activityType,
+ const entry = new Task(
+ proto?.taskFragment.activityType ?? proto.activityType,
proto.fillsParent,
toRect(proto.bounds),
proto.id,
proto.rootTaskId,
- proto.displayId,
+ proto.taskFragment.displayId,
toRect(proto.lastNonFullscreenBounds),
proto.realActivity,
proto.origActivity,
@@ -47,8 +48,8 @@ ActivityTask.fromProto = function (proto, isActivityInTree: Boolean): ActivityTa
proto.surfaceWidth,
proto.surfaceHeight,
proto.createdByOrganizer,
- proto.minWidth,
- proto.minHeight,
+ proto?.taskFragment.minWidth ?? proto.minWidth,
+ proto?.taskFragment.minHeight ?? proto.minHeight,
windowContainer
)
@@ -62,4 +63,4 @@ ActivityTask.fromProto = function (proto, isActivityInTree: Boolean): ActivityTa
}
}
-export default ActivityTask
+export default Task
diff --git a/tools/winscope/src/flickerlib/windows/TaskFragment.ts b/tools/winscope/src/flickerlib/windows/TaskFragment.ts
new file mode 100644
index 000000000..b3aef2b88
--- /dev/null
+++ b/tools/winscope/src/flickerlib/windows/TaskFragment.ts
@@ -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
diff --git a/tools/winscope/src/flickerlib/windows/WindowContainer.ts b/tools/winscope/src/flickerlib/windows/WindowContainer.ts
index 756494573..154d0e23e 100644
--- a/tools/winscope/src/flickerlib/windows/WindowContainer.ts
+++ b/tools/winscope/src/flickerlib/windows/WindowContainer.ts
@@ -29,7 +29,8 @@ import {
import Activity from "./Activity"
import DisplayArea from "./DisplayArea"
import DisplayContent from "./DisplayContent"
-import ActivityTask from "./ActivityTask"
+import Task from "./Task"
+import TaskFragment from "./TaskFragment"
import WindowState from "./WindowState"
import WindowToken from "./WindowToken"
@@ -70,7 +71,8 @@ WindowContainer.fromProto = function ({
WindowContainer.childrenFromProto = function(proto, isActivityInTree: Boolean): WindowContainerChild {
return DisplayContent.fromProto(proto.displayContent, 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) ??
WindowToken.fromProto(proto.windowToken, isActivityInTree) ??
WindowState.fromProto(proto.window, isActivityInTree) ??