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);
|
super.debugFillProperties(properties);
|
||||||
properties.add(DiagnosticsProperty<Object>('owner', owner, level: parent != null ? DiagnosticLevel.hidden : DiagnosticLevel.info, defaultValue: null));
|
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<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) {
|
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
|
||||||
super.debugFillProperties(properties);
|
super.debugFillProperties(properties);
|
||||||
properties.add(DiagnosticsProperty<Rect>('paint bounds', canvasBounds));
|
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
|
@override
|
||||||
|
@ -270,6 +270,7 @@ void main() {
|
|||||||
r'TransformLayer#[0-9a-f]{5}\n'
|
r'TransformLayer#[0-9a-f]{5}\n'
|
||||||
r' owner: RenderView#[0-9a-f]{5}\n'
|
r' owner: RenderView#[0-9a-f]{5}\n'
|
||||||
r' creator: RenderView\n'
|
r' creator: RenderView\n'
|
||||||
|
r' engine layer: (TransformEngineLayer|PersistedTransform)#[0-9a-f]{5}\n'
|
||||||
r' offset: Offset\(0\.0, 0\.0\)\n'
|
r' offset: Offset\(0\.0, 0\.0\)\n'
|
||||||
r' transform:\n'
|
r' transform:\n'
|
||||||
r' \[0] 3\.0,0\.0,0\.0,0\.0\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', () {
|
test('mutating PictureLayer fields triggers needsAddToScene', () {
|
||||||
final PictureLayer pictureLayer = PictureLayer(Rect.zero);
|
final PictureLayer pictureLayer = PictureLayer(Rect.zero);
|
||||||
checkNeedsAddToScene(pictureLayer, () {
|
checkNeedsAddToScene(pictureLayer, () {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user