diff --git a/tools/winscope/package-lock.json b/tools/winscope/package-lock.json index e6d6eb8d5..e0411601e 100644 --- a/tools/winscope/package-lock.json +++ b/tools/winscope/package-lock.json @@ -32,8 +32,8 @@ "html2canvas": "^1.4.1", "jsbn": "^1.1.0", "jsbn-rsa": "^1.0.4", - "kotlin": "^1.7.0", - "kotlin-compiler": "^1.7.0", + "kotlin": "^1.8.10", + "kotlin-compiler": "^1.8.10", "protobufjs": "^6.11.3", "rxjs": "~7.5.0", "style-loader": "^3.3.1", @@ -10508,14 +10508,14 @@ } }, "node_modules/kotlin": { - "version": "1.7.22", - "resolved": "https://registry.npmjs.org/kotlin/-/kotlin-1.7.22.tgz", - "integrity": "sha512-dB5Ns3DULFc4kCG8YUZ8cdDMZBueKcWuSjK0kQJHuoRSjzun6dVRcUzwufF37HoNNyPrkWZbr26wtSoA17+Kaw==" + "version": "1.8.10", + "resolved": "https://registry.npmjs.org/kotlin/-/kotlin-1.8.10.tgz", + "integrity": "sha512-vNB/4k1sv10L2GXasZwesZIV3pyEtB9MRmWyxXV4VsFD3KIJwQt81fcU2mXj/aGwKnL67zeMQpbgKU3yvfJpCw==" }, "node_modules/kotlin-compiler": { - "version": "1.7.22", - "resolved": "https://registry.npmjs.org/kotlin-compiler/-/kotlin-compiler-1.7.22.tgz", - "integrity": "sha512-hGT4K76h4W6k60pyk/4pYWKQ5UldYf31nQCSX3/pYhK+nfKiQPt07FTP0WrbUplNE1GxHjZ+CxVPtwNQrGcZdQ==", + "version": "1.8.10", + "resolved": "https://registry.npmjs.org/kotlin-compiler/-/kotlin-compiler-1.8.10.tgz", + "integrity": "sha512-jvmEVUb0M+2kiaytLI/QIYQT1rSh5VQs62ArebSDKMu2EO7ZRatUh/cTqR7QtLlsjzI8PV156BiOIn+CmoR+2A==", "bin": { "kotlinc-js": "bin/kotlinc-js-runner.js" } @@ -25082,14 +25082,14 @@ "dev": true }, "kotlin": { - "version": "1.7.22", - "resolved": "https://registry.npmjs.org/kotlin/-/kotlin-1.7.22.tgz", - "integrity": "sha512-dB5Ns3DULFc4kCG8YUZ8cdDMZBueKcWuSjK0kQJHuoRSjzun6dVRcUzwufF37HoNNyPrkWZbr26wtSoA17+Kaw==" + "version": "1.8.10", + "resolved": "https://registry.npmjs.org/kotlin/-/kotlin-1.8.10.tgz", + "integrity": "sha512-vNB/4k1sv10L2GXasZwesZIV3pyEtB9MRmWyxXV4VsFD3KIJwQt81fcU2mXj/aGwKnL67zeMQpbgKU3yvfJpCw==" }, "kotlin-compiler": { - "version": "1.7.22", - "resolved": "https://registry.npmjs.org/kotlin-compiler/-/kotlin-compiler-1.7.22.tgz", - "integrity": "sha512-hGT4K76h4W6k60pyk/4pYWKQ5UldYf31nQCSX3/pYhK+nfKiQPt07FTP0WrbUplNE1GxHjZ+CxVPtwNQrGcZdQ==" + "version": "1.8.10", + "resolved": "https://registry.npmjs.org/kotlin-compiler/-/kotlin-compiler-1.8.10.tgz", + "integrity": "sha512-jvmEVUb0M+2kiaytLI/QIYQT1rSh5VQs62ArebSDKMu2EO7ZRatUh/cTqR7QtLlsjzI8PV156BiOIn+CmoR+2A==" }, "less": { "version": "4.1.3", diff --git a/tools/winscope/package.json b/tools/winscope/package.json index 74452291d..5eaa4e6b5 100644 --- a/tools/winscope/package.json +++ b/tools/winscope/package.json @@ -11,7 +11,8 @@ "deps_graph:check_cycles": "count=$(npx madge --extensions ts,js src/ --circular 2>&1 | awk '/Found.*circular dependencies/ {print $3}'); test ${count:-0} -le 10", "start": "webpack serve --config webpack.config.dev.js --open --hot --port 8080", "start:remote_tool_mock": "webpack serve --config src/test/remote_tool_mock/webpack.config.js --open --hot --port 8081", - "build:kotlin": "rm -rf kotlin_build && JAVA_OPTS='-Xmx2g -Xms1g' npx kotlinc-js -source-map -source-map-embed-sources always -module-kind commonjs -output kotlin_build/flicker.js ../../../platform_testing/libraries/flicker/src/com/android/server/wm/traces/common", + "build:kotlin_legacy": "rm -rf kotlin_build && JAVA_OPTS='-Xmx2g -Xms1g' npx kotlinc-js -source-map -source-map-embed-sources always -module-kind commonjs -output kotlin_build/flicker.js ../../../platform_testing/libraries/flicker/src/android/tools/common", + "build:kotlin": "rm -rf kotlin_build && mkdir kotlin_build && JAVA_OPTS='-Xmx2g -Xms1g' npx kotlinc-js -Xir-produce-js -Xir-only -Xir-module-name=flicker -Xtyped-arrays -source-map -source-map-embed-sources always -module-kind commonjs -target v8 -libraries ./node_modules/kotlin-compiler/lib/kotlin-stdlib-js.jar -output kotlin_build/flicker.js ../../../platform_testing/libraries/flicker/src/android/tools/common/", "build:prod": "webpack --config webpack.config.prod.js --progress", "build:remote_tool_mock": "webpack --config src/test/remote_tool_mock/webpack.config.js --progress", "build:all": "npm run build:kotlin && npm run build:prod && npm run build:remote_tool_mock", @@ -46,8 +47,8 @@ "html2canvas": "^1.4.1", "jsbn": "^1.1.0", "jsbn-rsa": "^1.0.4", - "kotlin": "^1.7.0", - "kotlin-compiler": "^1.7.0", + "kotlin": "^1.8.10", + "kotlin-compiler": "^1.8.10", "protobufjs": "^6.11.3", "rxjs": "~7.5.0", "style-loader": "^3.3.1", diff --git a/tools/winscope/src/trace/flickerlib/common.js b/tools/winscope/src/trace/flickerlib/common.js index 76ff58a38..852abe041 100644 --- a/tools/winscope/src/trace/flickerlib/common.js +++ b/tools/winscope/src/trace/flickerlib/common.js @@ -18,79 +18,53 @@ // as clean es6 modules rather than having them be commonjs modules // WM -const WindowManagerTrace = - require('flicker').com.android.server.wm.traces.common.windowmanager.WindowManagerTrace; -const WindowManagerState = - require('flicker').com.android.server.wm.traces.common.windowmanager.WindowManagerState; +const WindowManagerTrace = require('flicker').android.tools.common.traces.wm.WindowManagerTrace; +const WindowManagerState = require('flicker').android.tools.common.traces.wm.WindowManagerState; const WindowManagerTraceEntryBuilder = - require('flicker').com.android.server.wm.traces.common.windowmanager - .WindowManagerTraceEntryBuilder; -const Activity = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.Activity; -const Configuration = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.Configuration; -const ConfigurationContainer = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows - .ConfigurationContainer; -const DisplayArea = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.DisplayArea; -const DisplayContent = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.DisplayContent; -const DisplayCutout = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.DisplayCutout; + require('flicker').android.tools.common.traces.wm.WindowManagerTraceEntryBuilder; +const Activity = require('flicker').android.tools.common.traces.wm.Activity; +const Configuration = require('flicker').android.tools.common.traces.wm.Configuration; +const ConfigurationContainer = require('flicker').android.tools.common.traces.wm.ConfigurationContainer; +const DisplayArea = require('flicker').android.tools.common.traces.wm.DisplayArea; +const DisplayContent = require('flicker').android.tools.common.traces.wm.DisplayContent; +const DisplayCutout = require('flicker').android.tools.common.traces.wm.DisplayCutout; const KeyguardControllerState = - require('flicker').com.android.server.wm.traces.common.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.windowmanager.windows.WindowContainer; -const WindowLayoutParams = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.WindowLayoutParams; -const WindowManagerPolicy = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.WindowManagerPolicy; -const WindowState = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.WindowState; -const WindowToken = - require('flicker').com.android.server.wm.traces.common.windowmanager.windows.WindowToken; + require('flicker').android.tools.common.traces.wm.KeyguardControllerState; +const RootWindowContainer = require('flicker').android.tools.common.traces.wm.RootWindowContainer; +const Task = require('flicker').android.tools.common.traces.wm.Task; +const TaskFragment = require('flicker').android.tools.common.traces.wm.TaskFragment; +const WindowConfiguration = require('flicker').android.tools.common.traces.wm.WindowConfiguration; +const WindowContainer = require('flicker').android.tools.common.traces.wm.WindowContainer; +const WindowLayoutParams = require('flicker').android.tools.common.traces.wm.WindowLayoutParams; +const WindowManagerPolicy = require('flicker').android.tools.common.traces.wm.WindowManagerPolicy; +const WindowState = require('flicker').android.tools.common.traces.wm.WindowState; +const WindowToken = require('flicker').android.tools.common.traces.wm.WindowToken; // SF -const Layer = require('flicker').com.android.server.wm.traces.common.layers.Layer; -const LayerProperties = - require('flicker').com.android.server.wm.traces.common.layers.LayerProperties; -const BaseLayerTraceEntry = - require('flicker').com.android.server.wm.traces.common.layers.BaseLayerTraceEntry; -const LayerTraceEntry = - require('flicker').com.android.server.wm.traces.common.layers.LayerTraceEntry; +const Layer = require('flicker').android.tools.common.traces.surfaceflinger.Layer; +const LayerProperties = require('flicker').android.tools.common.traces.surfaceflinger.LayerProperties; +const LayerTraceEntry = require('flicker').android.tools.common.traces.surfaceflinger.LayerTraceEntry; const LayerTraceEntryBuilder = - require('flicker').com.android.server.wm.traces.common.layers.LayerTraceEntryBuilder; -const LayersTrace = require('flicker').com.android.server.wm.traces.common.layers.LayersTrace; -const Matrix22 = require('flicker').com.android.server.wm.traces.common.Matrix22; -const Matrix33 = require('flicker').com.android.server.wm.traces.common.Matrix33; -const Transform = require('flicker').com.android.server.wm.traces.common.layers.Transform; -const Display = require('flicker').com.android.server.wm.traces.common.layers.Display; + require('flicker').android.tools.common.traces.surfaceflinger.LayerTraceEntryBuilder; +const LayersTrace = require('flicker').android.tools.common.traces.surfaceflinger.LayersTrace; +const Transform = require('flicker').android.tools.common.traces.surfaceflinger.Transform; +const Display = require('flicker').android.tools.common.traces.surfaceflinger.Display; +const Region = require('flicker').android.tools.common.datatypes.Region; // Common -const Size = require('flicker').com.android.server.wm.traces.common.Size; -const ActiveBuffer = require('flicker').com.android.server.wm.traces.common.ActiveBuffer; -const Color3 = require('flicker').com.android.server.wm.traces.common.Color3; -const Color = require('flicker').com.android.server.wm.traces.common.Color; -const Insets = require('flicker').com.android.server.wm.traces.common.Insets; -const PlatformConsts = - require('flicker').com.android.server.wm.traces.common.service.PlatformConsts; -const Point = require('flicker').com.android.server.wm.traces.common.Point; -const PointF = require('flicker').com.android.server.wm.traces.common.PointF; -const Rect = require('flicker').com.android.server.wm.traces.common.Rect; -const RectF = require('flicker').com.android.server.wm.traces.common.RectF; -const Region = require('flicker').com.android.server.wm.traces.common.region.Region; - -// Service -const TaggingEngine = require('flicker').com.android.server.wm.traces.common.service.TaggingEngine; +const Size = require('flicker').android.tools.common.datatypes.Size; +const ActiveBuffer = require('flicker').android.tools.common.datatypes.ActiveBuffer; +const Color3 = require('flicker').android.tools.common.datatypes.Color3; +const Color = require('flicker').android.tools.common.datatypes.Color; +const Insets = require('flicker').android.tools.common.datatypes.Insets; +const Matrix22 = require('flicker').android.tools.common.datatypes.Matrix22; +const Matrix33 = require('flicker').android.tools.common.datatypes.Matrix33; +const PlatformConsts = require('flicker').android.tools.common.PlatformConsts; +const Rotation = require('flicker').android.tools.common.Rotation; +const Point = require('flicker').android.tools.common.datatypes.Point; +const PointF = require('flicker').android.tools.common.datatypes.PointF; +const Rect = require('flicker').android.tools.common.datatypes.Rect; +const RectF = require('flicker').android.tools.common.datatypes.RectF; const EMPTY_SIZE = Size.Companion.EMPTY; const EMPTY_BUFFER = ActiveBuffer.Companion.EMPTY; @@ -299,7 +273,6 @@ export { WindowManagerState, WindowManagerTraceEntryBuilder, // SF - BaseLayerTraceEntry, Layer, LayerProperties, LayerTraceEntry, @@ -320,8 +293,8 @@ export { Rect, RectF, Region, + Rotation, // Service - TaggingEngine, toSize, toActiveBuffer, toColor, diff --git a/tools/winscope/src/trace/flickerlib/layers/LayerTraceEntry.ts b/tools/winscope/src/trace/flickerlib/layers/LayerTraceEntry.ts index 4dc634d9b..66c8fb088 100644 --- a/tools/winscope/src/trace/flickerlib/layers/LayerTraceEntry.ts +++ b/tools/winscope/src/trace/flickerlib/layers/LayerTraceEntry.ts @@ -73,12 +73,11 @@ function addAttributes(entry: LayerTraceEntry, protos: object[], useElapsedTime entry.name = TimeUtils.format(new RealTimestamp(entry.clockTimestamp)); entry.shortName = entry.name; } - entry.isVisible = true; } function newDisplay(proto: any): Display { return new Display( - proto.id, + `${proto.id}`, proto.name, proto.layerStack, toSize(proto.size), diff --git a/tools/winscope/src/trace/flickerlib/windows/DisplayContent.ts b/tools/winscope/src/trace/flickerlib/windows/DisplayContent.ts index 61551e3dc..2513f5d40 100644 --- a/tools/winscope/src/trace/flickerlib/windows/DisplayContent.ts +++ b/tools/winscope/src/trace/flickerlib/windows/DisplayContent.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import {DisplayContent, DisplayCutout, PlatformConsts, Rect, toInsets, toRect} from '../common'; +import { DisplayContent, DisplayCutout, Rotation, Rect, toInsets, toRect} from '../common'; import {shortenName} from '../mixin'; import {WindowContainer} from './WindowContainer'; @@ -56,7 +56,7 @@ DisplayContent.fromProto = ( proto.focusedApp, proto.appTransition?.lastUsedAppTransition ?? '', proto.appTransition?.appTransitionState ?? '', - PlatformConsts.Rotation.Companion.getByValue(proto.displayRotation?.rotation ?? 0), + Rotation.Companion.getByValue(proto.displayRotation?.rotation ?? 0), proto.displayRotation?.lastOrientation ?? 0, createDisplayCutout(proto.displayInfo?.cutout), windowContainer diff --git a/tools/winscope/src/trace/flickerlib/windows/WindowManagerState.ts b/tools/winscope/src/trace/flickerlib/windows/WindowManagerState.ts index 55cdd81b2..a593224b4 100644 --- a/tools/winscope/src/trace/flickerlib/windows/WindowManagerState.ts +++ b/tools/winscope/src/trace/flickerlib/windows/WindowManagerState.ts @@ -18,7 +18,7 @@ import {TimeUtils} from 'common/time_utils'; import {ElapsedTimestamp, RealTimestamp} from 'trace/timestamp'; import { KeyguardControllerState, - PlatformConsts, + Rotation, RootWindowContainer, WindowManagerPolicy, WindowManagerState, @@ -80,7 +80,6 @@ function addAttributes(entry: WindowManagerState, proto: any, useElapsedTime = f entry.name = TimeUtils.format(new RealTimestamp(BigInt(entry.clockTimestamp))); entry.shortName = entry.name; } - entry.isVisible = true; } function createWindowManagerPolicy(proto: any): WindowManagerPolicy { @@ -94,7 +93,7 @@ function createWindowManagerPolicy(proto: any): WindowManagerPolicy { proto.keyguardOccludedPending, proto.lastSystemUiFlags, proto.orientation, - PlatformConsts.Rotation.Companion.getByValue(proto.rotation), + Rotation.Companion.getByValue(proto.rotation), proto.rotationMode, proto.screenOnFully, proto.windowManagerDrawComplete diff --git a/tools/winscope/src/viewers/common/tree_generator_test.ts b/tools/winscope/src/viewers/common/tree_generator_test.ts index 91b870c03..d66307fa3 100644 --- a/tools/winscope/src/viewers/common/tree_generator_test.ts +++ b/tools/winscope/src/viewers/common/tree_generator_test.ts @@ -25,8 +25,8 @@ describe('TreeGenerator', () => { beforeAll(async () => { entry = { kind: 'entry', - name: 'BaseLayerTraceEntry', - stableId: 'BaseLayerTraceEntry', + name: 'LayerTraceEntry', + stableId: 'LayerTraceEntry', id: 0, parent: undefined, children: [ @@ -53,9 +53,9 @@ describe('TreeGenerator', () => { it('generates tree', () => { const expected: HierarchyTreeNode = new HierarchyTreeBuilder() - .setName('BaseLayerTraceEntry') + .setName('LayerTraceEntry') .setKind('entry') - .setStableId('BaseLayerTraceEntry') + .setStableId('LayerTraceEntry') .setChildren([ new HierarchyTreeBuilder() .setName('Child1') @@ -82,9 +82,9 @@ describe('TreeGenerator', () => { it('generates diff tree with no diff', () => { const expected: HierarchyTreeNode = new HierarchyTreeBuilder() - .setName('BaseLayerTraceEntry') + .setName('LayerTraceEntry') .setKind('entry') - .setStableId('BaseLayerTraceEntry') + .setStableId('LayerTraceEntry') .setChildren([ new HierarchyTreeBuilder() .setName('Child1') @@ -121,8 +121,8 @@ describe('TreeGenerator', () => { it('generates diff tree with moved node', () => { const prevEntry: TraceTreeNode = { kind: 'entry', - name: 'BaseLayerTraceEntry', - stableId: 'BaseLayerTraceEntry', + name: 'LayerTraceEntry', + stableId: 'LayerTraceEntry', id: 0, parent: undefined, children: [ @@ -146,9 +146,9 @@ describe('TreeGenerator', () => { }; const expected: HierarchyTreeNode = new HierarchyTreeBuilder() - .setName('BaseLayerTraceEntry') + .setName('LayerTraceEntry') .setKind('entry') - .setStableId('BaseLayerTraceEntry') + .setStableId('LayerTraceEntry') .setChildren([ new HierarchyTreeBuilder() .setName('Child1') diff --git a/tools/winscope/src/viewers/components/tree_component_test.ts b/tools/winscope/src/viewers/components/tree_component_test.ts index 34f0196e6..2c568bc75 100644 --- a/tools/winscope/src/viewers/components/tree_component_test.ts +++ b/tools/winscope/src/viewers/components/tree_component_test.ts @@ -60,8 +60,8 @@ describe('TreeComponent', () => { item: UiTreeNode = { simplifyNames: false, kind: 'entry', - name: 'BaseLayerTraceEntry', - shortName: 'BLTE', + name: 'LayerTraceEntry', + shortName: 'LTE', chips: [], children: [{kind: '3', stableId: '3', name: 'Child1'}], }; diff --git a/tools/winscope/src/viewers/components/tree_node_component_test.ts b/tools/winscope/src/viewers/components/tree_node_component_test.ts index cb31d781e..3854f7d82 100644 --- a/tools/winscope/src/viewers/components/tree_node_component_test.ts +++ b/tools/winscope/src/viewers/components/tree_node_component_test.ts @@ -56,8 +56,8 @@ describe('TreeNodeComponent', () => { item = { simplifyNames: false, kind: 'entry', - name: 'BaseLayerTraceEntry', - shortName: 'BLTE', + name: 'LayerTraceEntry', + shortName: 'LTE', chips: [], };