Unverified Commit 9bb07b5f authored by Jonah Williams's avatar Jonah Williams Committed by GitHub

Revert "Use the new pushImageFilter offset parameter to fix the transform of...

Revert "Use the new pushImageFilter offset parameter to fix the transform of the children (#113673)" (#115861)

This reverts commit 91aeda7b.
parent 91aeda7b
...@@ -1816,14 +1816,13 @@ class ColorFilterLayer extends ContainerLayer { ...@@ -1816,14 +1816,13 @@ class ColorFilterLayer extends ContainerLayer {
} }
/// A composite layer that applies an [ImageFilter] to its children. /// A composite layer that applies an [ImageFilter] to its children.
class ImageFilterLayer extends OffsetLayer { class ImageFilterLayer extends ContainerLayer {
/// Creates a layer that applies an [ImageFilter] to its children. /// Creates a layer that applies an [ImageFilter] to its children.
/// ///
/// The [imageFilter] property must be non-null before the compositing phase /// The [imageFilter] property must be non-null before the compositing phase
/// of the pipeline. /// of the pipeline.
ImageFilterLayer({ ImageFilterLayer({
ui.ImageFilter? imageFilter, ui.ImageFilter? imageFilter,
super.offset,
}) : _imageFilter = imageFilter; }) : _imageFilter = imageFilter;
/// The image filter to apply to children. /// The image filter to apply to children.
...@@ -1845,7 +1844,6 @@ class ImageFilterLayer extends OffsetLayer { ...@@ -1845,7 +1844,6 @@ class ImageFilterLayer extends OffsetLayer {
assert(imageFilter != null); assert(imageFilter != null);
engineLayer = builder.pushImageFilter( engineLayer = builder.pushImageFilter(
imageFilter!, imageFilter!,
offset: offset,
oldLayer: _engineLayer as ui.ImageFilterEngineLayer?, oldLayer: _engineLayer as ui.ImageFilterEngineLayer?,
); );
addChildrenToScene(builder); addChildrenToScene(builder);
......
...@@ -105,13 +105,12 @@ class _ImageFilterRenderObject extends RenderProxyBox { ...@@ -105,13 +105,12 @@ class _ImageFilterRenderObject extends RenderProxyBox {
} }
if (layer == null) { if (layer == null) {
layer = ImageFilterLayer(imageFilter: imageFilter, offset: offset); layer = ImageFilterLayer(imageFilter: imageFilter);
} else { } else {
final ImageFilterLayer filterLayer = layer! as ImageFilterLayer; final ImageFilterLayer filterLayer = layer! as ImageFilterLayer;
filterLayer.imageFilter = imageFilter; filterLayer.imageFilter = imageFilter;
filterLayer.offset = offset;
} }
context.pushLayer(layer!, super.paint, Offset.zero); context.pushLayer(layer!, super.paint, offset);
assert(() { assert(() {
layer!.debugCreator = debugCreator; layer!.debugCreator = debugCreator;
return true; return true;
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
// machines. // machines.
@Tags(<String>['reduced-test-set']) @Tags(<String>['reduced-test-set'])
import 'dart:math';
import 'dart:ui'; import 'dart:ui';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
...@@ -30,24 +29,6 @@ void main() { ...@@ -30,24 +29,6 @@ void main() {
); );
}); });
testWidgets('Image filter - blur with offset', (WidgetTester tester) async {
await tester.pumpWidget(
RepaintBoundary(
child: Transform.translate(
offset: const Offset(50, 50),
child: ImageFiltered(
imageFilter: ImageFilter.blur(sigmaX: 3.0, sigmaY: 3.0),
child: const Placeholder(),
),
),
),
);
await expectLater(
find.byType(ImageFiltered),
matchesGoldenFile('image_filter_blur_offset.png'),
);
});
testWidgets('Image filter - dilate', (WidgetTester tester) async { testWidgets('Image filter - dilate', (WidgetTester tester) async {
await tester.pumpWidget( await tester.pumpWidget(
RepaintBoundary( RepaintBoundary(
...@@ -116,42 +97,6 @@ void main() { ...@@ -116,42 +97,6 @@ void main() {
); );
}); });
testWidgets('Image filter - matrix with offset', (WidgetTester tester) async {
final Matrix4 matrix = Matrix4.rotationZ(pi / 18);
final ImageFilter matrixFilter = ImageFilter.matrix(matrix.storage);
await tester.pumpWidget(
RepaintBoundary(
child: Transform.translate(
offset: const Offset(50, 50),
child: ImageFiltered(
imageFilter: matrixFilter,
child: MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(primarySwatch: Colors.blue),
home: Scaffold(
appBar: AppBar(
title: const Text('Matrix ImageFilter Test'),
),
body: const Center(
child:Text('Hooray!'),
),
floatingActionButton: FloatingActionButton(
onPressed: () { },
tooltip: 'Increment',
child: const Icon(Icons.add),
),
),
),
),
),
),
);
await expectLater(
find.byType(ImageFiltered),
matchesGoldenFile('image_filter_matrix_offset.png'),
);
});
testWidgets('Image filter - reuses its layer', (WidgetTester tester) async { testWidgets('Image filter - reuses its layer', (WidgetTester tester) async {
Future<void> pumpWithSigma(double sigma) async { Future<void> pumpWithSigma(double sigma) async {
await tester.pumpWidget( await tester.pumpWidget(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment