From a9d7ab92b6ff2f2a80d8a2ed6264a444fb2cb63f Mon Sep 17 00:00:00 2001 From: Ahmed Mohamed Sameh Date: Sat, 6 Dec 2025 01:51:02 +0200 Subject: [PATCH] =?UTF-8?q?Make=20sure=20that=20a=20CupertinoSearchTextFie?= =?UTF-8?q?ld=20doesn't=20crash=20in=200x0=20enviro=E2=80=A6=20(#179487)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is my attempt to handle https://github.com/flutter/flutter/issues/6537 for the CupertinoSearchTextField widget. Co-authored-by: Tong Mu --- .../flutter/test/cupertino/search_field_test.dart | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/flutter/test/cupertino/search_field_test.dart b/packages/flutter/test/cupertino/search_field_test.dart index 6ac85f45b0f..918939d82c9 100644 --- a/packages/flutter/test/cupertino/search_field_test.dart +++ b/packages/flutter/test/cupertino/search_field_test.dart @@ -886,4 +886,19 @@ void main() { expect(tester.getSize(find.byIcon(icon)), Size.square(scaleFactor * iconSize)); } }); + + testWidgets('CupertinoSearchTextField does not crash at zero area', (WidgetTester tester) async { + tester.view.physicalSize = Size.zero; + final controller = TextEditingController(text: 'X'); + addTearDown(tester.view.reset); + addTearDown(controller.dispose); + await tester.pumpWidget( + CupertinoApp( + home: Center(child: CupertinoSearchTextField(controller: controller)), + ), + ); + expect(tester.getSize(find.byType(CupertinoSearchTextField)), Size.zero); + controller.selection = const TextSelection.collapsed(offset: 0); + await tester.pump(); + }); }