Print more layer debug info (#49679)
This commit is contained in:
parent
4673724e41
commit
2ccf3f877d
@ -460,6 +460,7 @@ abstract class Layer extends AbstractNode with DiagnosticableTreeMixin {
|
||||
super.debugFillProperties(properties);
|
||||
properties.add(DiagnosticsProperty<Object>('owner', owner, level: parent != null ? DiagnosticLevel.hidden : DiagnosticLevel.info, defaultValue: null));
|
||||
properties.add(DiagnosticsProperty<dynamic>('creator', debugCreator, defaultValue: null, level: DiagnosticLevel.debug));
|
||||
properties.add(DiagnosticsProperty<String>('engine layer', describeIdentity(_engineLayer)));
|
||||
}
|
||||
}
|
||||
|
||||
@ -535,6 +536,11 @@ class PictureLayer extends Layer {
|
||||
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
|
||||
super.debugFillProperties(properties);
|
||||
properties.add(DiagnosticsProperty<Rect>('paint bounds', canvasBounds));
|
||||
properties.add(DiagnosticsProperty<String>('picture', describeIdentity(_picture)));
|
||||
properties.add(DiagnosticsProperty<String>(
|
||||
'raster cache hints',
|
||||
'isComplex = $isComplexHint, willChange = $willChangeHint'),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
|
@ -270,6 +270,7 @@ void main() {
|
||||
r'TransformLayer#[0-9a-f]{5}\n'
|
||||
r' owner: RenderView#[0-9a-f]{5}\n'
|
||||
r' creator: RenderView\n'
|
||||
r' engine layer: (TransformEngineLayer|PersistedTransform)#[0-9a-f]{5}\n'
|
||||
r' offset: Offset\(0\.0, 0\.0\)\n'
|
||||
r' transform:\n'
|
||||
r' \[0] 3\.0,0\.0,0\.0,0\.0\n'
|
||||
|
@ -256,6 +256,21 @@ void main() {
|
||||
);
|
||||
});
|
||||
|
||||
test('PictureLayer prints picture, engine layer, and raster cache hints in debug info', () {
|
||||
final PictureRecorder recorder = PictureRecorder();
|
||||
final Canvas canvas = Canvas(recorder);
|
||||
canvas.drawPaint(Paint());
|
||||
final Picture picture = recorder.endRecording();
|
||||
final PictureLayer layer = PictureLayer(const Rect.fromLTRB(0, 0, 1, 1));
|
||||
layer.picture = picture;
|
||||
layer.isComplexHint = true;
|
||||
layer.willChangeHint = false;
|
||||
final List<String> info = _getDebugInfo(layer);
|
||||
expect(info, contains('picture: ${describeIdentity(picture)}'));
|
||||
expect(info, contains('engine layer: ${describeIdentity(null)}'));
|
||||
expect(info, contains('raster cache hints: isComplex = true, willChange = false'));
|
||||
});
|
||||
|
||||
test('mutating PictureLayer fields triggers needsAddToScene', () {
|
||||
final PictureLayer pictureLayer = PictureLayer(Rect.zero);
|
||||
checkNeedsAddToScene(pictureLayer, () {
|
||||
|
Loading…
x
Reference in New Issue
Block a user