TF-801 Fix overflow pixel list rule filter view

This commit is contained in:
dab246
2022-08-17 21:19:48 +07:00
committed by Dat H. Pham
parent c4d78f732d
commit 04b3b49c23
2 changed files with 37 additions and 29 deletions
@@ -21,18 +21,21 @@ class EmailRulesView extends GetWidget<EmailRulesController> with AppLoaderMixin
body: Container( body: Container(
width: double.infinity, width: double.infinity,
margin: _getMarginView(context), margin: _getMarginView(context),
child: Column( child: SingleChildScrollView(
crossAxisAlignment: CrossAxisAlignment.start, physics: const ClampingScrollPhysics(),
children: [ child: Column(
EmailRulesHeaderWidget( crossAxisAlignment: CrossAxisAlignment.start,
imagePaths: _imagePaths, children: [
responsiveUtils: _responsiveUtils, EmailRulesHeaderWidget(
createRule: () => controller.goToCreateNewRule(), imagePaths: _imagePaths,
), responsiveUtils: _responsiveUtils,
SizedBox(height: _responsiveUtils.isWebDesktop(context) ? 24 : 16), createRule: () => controller.goToCreateNewRule(),
_buildLoadingView(), ),
const Expanded(child: ListEmailRulesWidget()) SizedBox(height: _responsiveUtils.isWebDesktop(context) ? 24 : 16),
], _buildLoadingView(),
const ListEmailRulesWidget()
],
),
), ),
), ),
); );
@@ -50,26 +50,31 @@ class ListEmailRulesWidget extends GetWidget<EmailRulesController> {
height: 1, height: 1,
thickness: 0.2, thickness: 0.2,
), ),
Expanded( Obx(() {
child: Obx(() { log('ListEmailRulesWidget::build(): ${controller.listEmailRule}');
log('ListEmailRulesWidget::build(): ${controller.listEmailRule}'); return ListView.separated(
return ListView.separated( shrinkWrap: true,
shrinkWrap: true, itemCount: controller.listEmailRule.length,
itemCount: controller.listEmailRule.length, primary: false,
itemBuilder: (context, index) { itemBuilder: (context, index) {
final ruleWithId = controller.listEmailRule[index] final ruleWithId = controller.listEmailRule[index]
.copyWith(id: RuleId(id: Id(index.toString()))); .copyWith(id: RuleId(id: Id(index.toString())));
log('ListEmailRulesWidget::build(): $ruleWithId'); log('ListEmailRulesWidget::build(): $ruleWithId');
return EmailRulesItemWidget(rule: ruleWithId); return EmailRulesItemWidget(rule: ruleWithId);
}, },
separatorBuilder: (context, index) => const Divider( separatorBuilder: (context, index) {
if (controller.listEmailRule.isNotEmpty) {
return const Divider(
color: AppColor.lineItemListColor, color: AppColor.lineItemListColor,
height: 1, height: 1,
thickness: 0.2, thickness: 0.2,
), );
); } else {
}), return const SizedBox.shrink();
), }
},
);
}),
]), ]),
), ),
); );