Revert "Ensure the engineLayer is disposed when an OpacityLayer is disabled (#94280)" (#94743)

This reverts commit c567f8439b.
This commit is contained in:
Ren You 2021-12-06 12:05:50 -08:00 committed by GitHub
parent 4533afa5ff
commit a607a60b4a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 1 additions and 21 deletions

View file

@ -1764,16 +1764,11 @@ class OpacityLayer extends OffsetLayer {
@override
void addToScene(ui.SceneBuilder builder) {
assert(alpha != null);
// Don't add this layer if there's no child.
bool enabled = firstChild != null;
bool enabled = firstChild != null; // don't add this layer if there's no child
if (!enabled) {
// Ensure the engineLayer is disposed.
engineLayer = null;
// TODO(dnfield): Remove this if/when we can fix https://github.com/flutter/flutter/issues/90004
return;
}
assert(() {
enabled = enabled && !debugDisableOpacityLayers;
return true;

View file

@ -637,21 +637,6 @@ void main() {
expect(builder.addedPicture, true);
expect(layer.engineLayer, isA<FakeOpacityEngineLayer>());
});
test('OpacityLayer dispose its engineLayer if there are no children', () {
final OpacityLayer layer = OpacityLayer(alpha: 128);
final FakeSceneBuilder builder = FakeSceneBuilder();
layer.addToScene(builder);
expect(layer.engineLayer, null);
layer.append(PictureLayer(Rect.largest)..picture = FakePicture());
layer.addToScene(builder);
expect(layer.engineLayer, isA<FakeOpacityEngineLayer>());
layer.removeAllChildren();
layer.addToScene(builder);
expect(layer.engineLayer, null);
});
}
class FakeEngineLayer extends Fake implements EngineLayer {