Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 6a6986d

Browse files
authored
improve sensitivity of BackdropFilter web tests (#20915)
1 parent c7b3d53 commit 6a6986d

File tree

2 files changed

+22
-20
lines changed

2 files changed

+22
-20
lines changed

lib/web_ui/dev/goldens_lock.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
repository: https://github.com/flutter/goldens.git
2-
revision: 86a069d478c3512e4a91baa07ecb421156e10fce
2+
revision: 57327a39aba333794a092d4e72777bb37102f8ba

lib/web_ui/test/golden_tests/engine/backdrop_filter_golden_test.dart

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ import 'package:ui/src/engine.dart';
1212

1313
import 'package:web_engine_tester/golden_tester.dart';
1414

15-
final Rect region = Rect.fromLTWH(0, 0, 500, 500);
16-
1715
void main() {
1816
internalBootstrapBrowserTest(() => testMain);
1917
}
@@ -35,22 +33,24 @@ void testMain() async {
3533
// the clip boundary around backdrop filter. However there should be only
3634
// one red dot since the other one should be blurred by filter.
3735
test('Background should only blur at ancestor clip boundary', () async {
36+
final Rect region = Rect.fromLTWH(0, 0, 190, 130);
37+
3838
final SurfaceSceneBuilder builder = SurfaceSceneBuilder();
39-
final Picture backgroundPicture = _drawBackground();
39+
final Picture backgroundPicture = _drawBackground(region);
4040
builder.addPicture(Offset.zero, backgroundPicture);
4141

4242
builder.pushClipRect(
43-
const Rect.fromLTRB(10, 10, 300, 300),
43+
const Rect.fromLTRB(10, 10, 180, 120),
4444
);
45-
final Picture circles1 = _drawTestPictureWithCircles(30, 30);
45+
final Picture circles1 = _drawTestPictureWithCircles(region, 30, 30);
4646
builder.addPicture(Offset.zero, circles1);
4747

4848
builder.pushClipRect(
49-
const Rect.fromLTRB(60, 10, 300, 300),
49+
const Rect.fromLTRB(60, 10, 180, 120),
5050
);
5151
builder.pushBackdropFilter(ImageFilter.blur(sigmaX: 10.0, sigmaY: 10.0),
5252
oldLayer: null);
53-
final Picture circles2 = _drawTestPictureWithCircles(90, 30);
53+
final Picture circles2 = _drawTestPictureWithCircles(region, 90, 30);
5454
builder.addPicture(Offset.zero, circles2);
5555
builder.pop();
5656
builder.pop();
@@ -64,21 +64,23 @@ void testMain() async {
6464
});
6565

6666
test('Background should only blur at ancestor clip boundary after move', () async {
67+
final Rect region = Rect.fromLTWH(0, 0, 190, 130);
68+
6769
final SurfaceSceneBuilder builder = SurfaceSceneBuilder();
68-
final Picture backgroundPicture = _drawBackground();
70+
final Picture backgroundPicture = _drawBackground(region);
6971
builder.addPicture(Offset.zero, backgroundPicture);
7072
ClipRectEngineLayer clipEngineLayer = builder.pushClipRect(
71-
const Rect.fromLTRB(10, 10, 300, 300),
73+
const Rect.fromLTRB(10, 10, 180, 120),
7274
);
73-
final Picture circles1 = _drawTestPictureWithCircles(30, 30);
75+
final Picture circles1 = _drawTestPictureWithCircles(region, 30, 30);
7476
builder.addPicture(Offset.zero, circles1);
7577
ClipRectEngineLayer clipEngineLayer2 = builder.pushClipRect(
76-
const Rect.fromLTRB(60, 10, 300, 300),
78+
const Rect.fromLTRB(60, 10, 180, 120),
7779
);
7880
BackdropFilterEngineLayer oldBackdropFilterLayer =
7981
builder.pushBackdropFilter(ImageFilter.blur(sigmaX: 10.0, sigmaY: 10.0),
8082
oldLayer: null);
81-
final Picture circles2 = _drawTestPictureWithCircles(90, 30);
83+
final Picture circles2 = _drawTestPictureWithCircles(region, 90, 30);
8284
builder.addPicture(Offset.zero, circles2);
8385
builder.pop();
8486
builder.pop();
@@ -89,12 +91,12 @@ void testMain() async {
8991
final SurfaceSceneBuilder builder2 = SurfaceSceneBuilder();
9092
builder2.addPicture(Offset.zero, backgroundPicture);
9193
builder2.pushClipRect(
92-
const Rect.fromLTRB(10, 10, 300, 300),
94+
const Rect.fromLTRB(10, 10, 180, 120),
9395
oldLayer: clipEngineLayer
9496
);
9597
builder2.addPicture(Offset.zero, circles1);
9698
builder2.pushClipRect(
97-
const Rect.fromLTRB(10, 75, 300, 300),
99+
const Rect.fromLTRB(10, 75, 180, 120),
98100
oldLayer: clipEngineLayer2
99101
);
100102
builder2.pushBackdropFilter(ImageFilter.blur(sigmaX: 10.0, sigmaY: 10.0),
@@ -112,10 +114,10 @@ void testMain() async {
112114
});
113115
}
114116

115-
Picture _drawTestPictureWithCircles(double offsetX, double offsetY) {
117+
Picture _drawTestPictureWithCircles(Rect region, double offsetX, double offsetY) {
116118
final EnginePictureRecorder recorder = PictureRecorder();
117119
final RecordingCanvas canvas =
118-
recorder.beginRecording(const Rect.fromLTRB(0, 0, 400, 400));
120+
recorder.beginRecording(region);
119121
canvas.drawCircle(
120122
Offset(offsetX + 10, offsetY + 10), 10, Paint()..style = PaintingStyle.fill);
121123
canvas.drawCircle(
@@ -139,12 +141,12 @@ Picture _drawTestPictureWithCircles(double offsetX, double offsetY) {
139141
return recorder.endRecording();
140142
}
141143

142-
Picture _drawBackground() {
144+
Picture _drawBackground(Rect region) {
143145
final EnginePictureRecorder recorder = PictureRecorder();
144146
final RecordingCanvas canvas =
145-
recorder.beginRecording(const Rect.fromLTRB(0, 0, 400, 400));
147+
recorder.beginRecording(region);
146148
canvas.drawRect(
147-
Rect.fromLTWH(8, 8, 400.0 - 16, 400.0 - 16),
149+
region.deflate(8.0),
148150
Paint()
149151
..style = PaintingStyle.fill
150152
..color = Color(0xFFE0FFE0)

0 commit comments

Comments
 (0)