diff --git a/tools/winscope/src/sf_visibility.js b/tools/winscope/src/sf_visibility.js index 17071974c..7ef8837f9 100644 --- a/tools/winscope/src/sf_visibility.js +++ b/tools/winscope/src/sf_visibility.js @@ -144,7 +144,7 @@ function is_visible(layer, hiddenByPolicy, includesCompositionState) { return true; } -function get_visibility_reason(layer) { +function get_visibility_reason(layer, includesCompositionState) { if (layer.type === 'ContainerLayer') { return 'ContainerLayer'; } @@ -193,6 +193,10 @@ function get_visibility_reason(layer) { return 'Layer is occluded by:' + layer.occludedBy.join(); } + if (includesCompositionState && is_empty(layer.visibleRegion)) { + return 'Visible region calculated by Composition Engine is empty'; + } + if (layer.visible) { return 'Unknown'; }; @@ -256,7 +260,7 @@ function fill_occlusion_state(layerMap, rootLayers, includesCompositionState) { layer.visible = is_visible(layer, layer.hidden, includesCompositionState); if (!layer.visible) { - layer.invisibleDueTo = get_visibility_reason(layer); + layer.invisibleDueTo = get_visibility_reason(layer, includesCompositionState); } }); }