Revert "[framework] Reland: use ImageFilter for zoom page transition " (#102611)

This commit is contained in:
Jonah Williams 2022-04-26 17:34:06 -07:00 committed by GitHub
parent 936623e174
commit c46d4c03cc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 68 deletions

View file

@ -318,11 +318,7 @@ class _ZoomEnterTransition extends StatelessWidget {
},
child: FadeTransition(
opacity: fadeTransition,
child: ScaleTransition(
scale: scaleTransition,
filterQuality: FilterQuality.low,
child: child,
),
child: ScaleTransition(scale: scaleTransition, child: child),
),
);
}
@ -367,11 +363,7 @@ class _ZoomExitTransition extends StatelessWidget {
return FadeTransition(
opacity: fadeTransition,
child: ScaleTransition(
scale: scaleTransition,
filterQuality: FilterQuality.low,
child: child,
),
child: ScaleTransition(scale: scaleTransition, child: child),
);
}
}

View file

@ -5,7 +5,6 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
@ -221,61 +220,4 @@ void main() {
await tester.pumpAndSettle();
expect(builtCount, 1);
}, variant: TargetPlatformVariant.only(TargetPlatform.android));
testWidgets('_ZoomPageTransition uses a FilterQuality while animating', (WidgetTester tester) async {
final Map<String, WidgetBuilder> routes = <String, WidgetBuilder>{
'/': (BuildContext context) => Material(
child: TextButton(
child: const Text('push'),
onPressed: () { Navigator.of(context).pushNamed('/b'); },
),
),
'/b': (BuildContext context) => StatefulBuilder(
builder: (BuildContext context, StateSetter setState) {
return TextButton(
child: const Text('pop'),
onPressed: () { Navigator.pop(context); },
);
},
),
};
await tester.pumpWidget(
MaterialApp(
theme: ThemeData(
pageTransitionsTheme: const PageTransitionsTheme(
builders: <TargetPlatform, PageTransitionsBuilder>{
TargetPlatform.android: ZoomPageTransitionsBuilder(), // creates a _ZoomPageTransition
},
),
),
routes: routes,
),
);
expect(tester.layers, isNot(contains(isA<ImageFilterLayer>())));
await tester.tap(find.text('push'));
await tester.pump();
await tester.pump();
expect(tester.layers, contains(isA<ImageFilterLayer>()));
expect(tester.layers.whereType<ImageFilterLayer>(), hasLength(1));
await tester.pumpAndSettle();
expect(tester.layers, isNot(contains(isA<ImageFilterLayer>())));
await tester.tap(find.text('pop'));
await tester.pump();
await tester.pump();
expect(tester.layers, contains(isA<ImageFilterLayer>()));
// exiting requires two different zooms.
expect(tester.layers.whereType<ImageFilterLayer>(), hasLength(2));
await tester.pumpAndSettle();
expect(tester.layers, isNot(contains(isA<ImageFilterLayer>())));
}, variant: TargetPlatformVariant.only(TargetPlatform.android));
}