Highlight layer in treeview when rect is clicked
Fixes a bug where the layer wasn't highlighted when we clicked on it in the rect view
Test: Click on the rects and make sure they are highlighted in the rect view
Change-Id: Ifa2c18cfbc0d8a255550ac32a3e3ed3946679fd3
diff --git a/tools/winscope/src/TraceView.vue b/tools/winscope/src/TraceView.vue
index 02fde4f..3dbc941 100644
--- a/tools/winscope/src/TraceView.vue
+++ b/tools/winscope/src/TraceView.vue
@@ -369,7 +369,13 @@
return null;
}
- return this.summarizer(this.hierarchySelected);
+ const summary = this.summarizer(this.hierarchySelected);
+
+ if (summary?.length === 0) {
+ return null;
+ }
+
+ return summary;
},
},
components: {
diff --git a/tools/winscope/src/transform.js b/tools/winscope/src/transform.js
index d57de61..34556dd 100644
--- a/tools/winscope/src/transform.js
+++ b/tools/winscope/src/transform.js
@@ -39,6 +39,7 @@
visible,
flattened,
stableId,
+ freeze = true,
}) {
function call(fn, arg) {
return (typeof fn == 'function') ? fn(arg) : fn;
@@ -113,7 +114,7 @@
rectResolved.ref = result;
}
- return Object.freeze(result);
+ return freeze ? Object.freeze(result) : result;
}
function getDiff(val, compareVal) {
diff --git a/tools/winscope/src/transform_sf.js b/tools/winscope/src/transform_sf.js
index c4d3611..d69ddea 100644
--- a/tools/winscope/src/transform_sf.js
+++ b/tools/winscope/src/transform_sf.js
@@ -115,14 +115,12 @@
});
// NOTE: Temporary until refactored to use flickerlib
- return {
- ...transformedLayer, ...{
- invisibleDueTo: layer.invisibleDueTo,
- occludedBy: layer.occludedBy,
- partiallyOccludedBy: layer.partiallyOccludedBy,
- coveredBy: layer.coveredBy,
- },
- };
+ transformedLayer.invisibleDueTo = layer.invisibleDueTo;
+ transformedLayer.occludedBy = layer.occludedBy;
+ transformedLayer.partiallyOccludedBy = layer.partiallyOccludedBy;
+ transformedLayer.coveredBy = layer.coveredBy;
+
+ return Object.freeze(transformedLayer);
}
function missingLayer(childId) {