From 35d4020013a01b6f9e5a273c29768b22f2c6f5cb Mon Sep 17 00:00:00 2001 From: Sikander Saleem Date: Sun, 10 May 2026 12:00:01 +0300 Subject: [PATCH] multiple dropdown chips added. --- .../export_module/pages/export_form_view.dart | 2 +- .../multiple_item_drop_down_menu.dart | 41 +++++++++++-------- 2 files changed, 25 insertions(+), 18 deletions(-) diff --git a/lib/modules/export_module/pages/export_form_view.dart b/lib/modules/export_module/pages/export_form_view.dart index feef4583..237ac2e2 100644 --- a/lib/modules/export_module/pages/export_form_view.dart +++ b/lib/modules/export_module/pages/export_form_view.dart @@ -69,6 +69,7 @@ class _ExportFormViewState extends State> { Expanded( child: SingleChildScrollView( child: Column( + spacing: 16, children: [ SingleItemDropDownMenu( context: context, @@ -82,7 +83,6 @@ class _ExportFormViewState extends State> { initialValue: selectedFormat, onSelect: _updateSelectedFormat, ), - 18.height, MultipleItemDropDownMenu( context: context, title: 'Columns', diff --git a/lib/new_views/common_widgets/multiple_item_drop_down_menu.dart b/lib/new_views/common_widgets/multiple_item_drop_down_menu.dart index 7b07ffce..85c552c1 100644 --- a/lib/new_views/common_widgets/multiple_item_drop_down_menu.dart +++ b/lib/new_views/common_widgets/multiple_item_drop_down_menu.dart @@ -3,6 +3,7 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/int_extensions.dart'; +import 'package:test_sa/extensions/text_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/new_views/common_widgets/app_loading_manager.dart'; import 'package:test_sa/providers/loading_list_notifier.dart'; @@ -172,28 +173,34 @@ class _MultipleItemDropDownMenuState const Divider( - thickness: 1, - color: Colors.white, - ), - itemBuilder: (cxt, index) => Text( - _selectedItem[index].name ?? "", // Null-aware operator for value.name - maxLines: 1, - overflow: TextOverflow.ellipsis, - style: Theme.of(context).textTheme.bodyMedium?.copyWith(fontWeight: FontWeight.w500, color: context.isDark ? AppColor.white10 : AppColor.black10), - ), - itemCount: _selectedItem.length, - ), + Wrap( + runSpacing: 4.toScreenHeight, + spacing: 4.toScreenWidth, + children: [ + for (int i = 0; i < _selectedItem.length; i++) + Chip( + backgroundColor: AppColor.backgroundTabBarColor(context), + side: BorderSide(color: AppColor.border2Color(context)), + label: Text(_selectedItem[i].name!), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(30.0)), + labelStyle: AppTextStyles.tinyFont2.copyWith(color: AppColor.labelTextStyleColor(context)), + deleteIconColor: AppColor.icon2Color(context), + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, + onDeleted: () { + _selectedItem.removeAt(i); + setState(() {}); + widget.onSelect!(_selectedItem); + }, + ), + ], + ).paddingOnly(top: 4), ], ) .onPress( @@ -204,7 +211,7 @@ class _MultipleItemDropDownMenuState