From 12628443631c7e6483d48f7c8ff6b23f5f0911d6 Mon Sep 17 00:00:00 2001 From: Levi Date: Sun, 13 Sep 2026 15:36:36 +0800 Subject: [PATCH 1/2] fix(ui): keep three extension columns at default width --- .../extensions/presentation/pages/extensions_page.dart | 2 +- ui/flutter/test/widget_test.dart | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ui/flutter/lib/features/extensions/presentation/pages/extensions_page.dart b/ui/flutter/lib/features/extensions/presentation/pages/extensions_page.dart index f5784616..6ccf05c5 100644 --- a/ui/flutter/lib/features/extensions/presentation/pages/extensions_page.dart +++ b/ui/flutter/lib/features/extensions/presentation/pages/extensions_page.dart @@ -27,7 +27,7 @@ import '../widgets/extension_detail_view.dart'; import '../widgets/extension_icon.dart'; import '../widgets/extension_setting_field.dart'; -const _extensionCardMinWidth = 296.0; +const _extensionCardMinWidth = 290.0; const _extensionGridSpacing = 10.0; int _extensionGridColumnCount(double width) { diff --git a/ui/flutter/test/widget_test.dart b/ui/flutter/test/widget_test.dart index f4902e9c..3b49b4b6 100644 --- a/ui/flutter/test/widget_test.dart +++ b/ui/flutter/test/widget_test.dart @@ -504,6 +504,11 @@ void main() { closeTo(tester.getRect(find.byKey(const ValueKey('extension-card-extension-2'))).right, 0.01), ); + tester.view.physicalSize = const Size(1024, 768); + await tester.pumpAndSettle(); + expect(gridColumns(), 3); + expect(tester.getSize(find.byKey(const ValueKey('extension-card-extension-0'))).width, greaterThanOrEqualTo(290)); + tester.view.physicalSize = const Size(1028, 608); await tester.pumpAndSettle(); expect(gridColumns(), 3); From d578fe96bcf425144832a23d6aff7dfc32a7677a Mon Sep 17 00:00:00 2001 From: Levi Date: Sun, 13 Sep 2026 15:39:04 +0800 Subject: [PATCH 2/2] test(ui): cover minimum extension card width --- ui/flutter/test/widget_test.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ui/flutter/test/widget_test.dart b/ui/flutter/test/widget_test.dart index 3b49b4b6..3a6c087c 100644 --- a/ui/flutter/test/widget_test.dart +++ b/ui/flutter/test/widget_test.dart @@ -542,7 +542,7 @@ void main() { }); testWidgets('extension cards compact large counts without crowding their actions', (WidgetTester tester) async { - await _setTestSize(tester, const Size(750, 608)); + await _setTestSize(tester, const Size(722, 608)); await tester.pumpWidget( ProviderScope( overrides: [extensionsControllerProvider.overrideWith(CrowdedExtensionCardController.new)], @@ -560,6 +560,7 @@ void main() { final cardRect = tester.getRect(find.byKey(const ValueKey('extension-card-crowded-extension'))); final statsRect = tester.getRect(find.byKey(const ValueKey('extension-card-stats-crowded-extension'))); final actionsRect = tester.getRect(find.byKey(const ValueKey('extension-card-actions-crowded-extension'))); + expect(cardRect.width, closeTo(290, 0.01)); expect(statsRect.right, lessThanOrEqualTo(actionsRect.left - 8)); expect(actionsRect.right, lessThanOrEqualTo(cardRect.right - 14)); expect(tester.takeException(), isNull);