From 1f5047cf08376a3dbb9c077960ea479754a1ec92 Mon Sep 17 00:00:00 2001 From: vjrj <vjrj@comunes.org> Date: Wed, 3 May 2023 00:02:34 +0200 Subject: [PATCH] Allow to Fav contacts in payments --- .../first_screen/pay_contact_search_page.dart | 21 +++---------------- .../first_screen/recipient_widget.dart | 5 +++++ 2 files changed, 8 insertions(+), 18 deletions(-) diff --git a/lib/ui/widgets/first_screen/pay_contact_search_page.dart b/lib/ui/widgets/first_screen/pay_contact_search_page.dart index ecdd1b89..bc45e5e1 100644 --- a/lib/ui/widgets/first_screen/pay_contact_search_page.dart +++ b/lib/ui/widgets/first_screen/pay_contact_search_page.dart @@ -19,6 +19,7 @@ import '../../ui_helpers.dart'; import '../custom_error_widget.dart'; import '../loading_box.dart'; import '../third_screen/contacts_page.dart'; +import 'contact_fav_icon.dart'; class PayContactSearchPage extends StatefulWidget { const PayContactSearchPage({super.key}); @@ -237,24 +238,8 @@ class _PayContactSearchPageState extends State<PayContactSearchPage> { }, trailing: BlocBuilder<ContactsCubit, ContactsState>( builder: (BuildContext context, ContactsState state) { - final ContactsCubit contactsCubit = context.read<ContactsCubit>(); - final bool isFavorite = contactsCubit.isContact(contact.pubKey); - return IconButton( - icon: Icon( - isFavorite ? Icons.favorite : Icons.favorite_border, - color: isFavorite ? Colors.red.shade400 : null, - ), - onPressed: () { - // setState(() { - if (!isFavorite) { - contactsCubit.addContact(contact); - } else { - contactsCubit.removeContact(Contact( - pubKey: contact.pubKey, - )); - } - }); - // }); + return ContactFavIcon( + contact: contact, contactsCubit: context.read<ContactsCubit>()); }), ); } diff --git a/lib/ui/widgets/first_screen/recipient_widget.dart b/lib/ui/widgets/first_screen/recipient_widget.dart index 58a5ab85..03f6bd08 100644 --- a/lib/ui/widgets/first_screen/recipient_widget.dart +++ b/lib/ui/widgets/first_screen/recipient_widget.dart @@ -1,9 +1,11 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import '../../../data/models/contact_cubit.dart'; import '../../../data/models/payment_cubit.dart'; import '../../../data/models/payment_state.dart'; import '../../ui_helpers.dart'; +import 'contact_fav_icon.dart'; class RecipientWidget extends StatelessWidget { const RecipientWidget({super.key}); @@ -43,6 +45,9 @@ class RecipientWidget extends StatelessWidget { ], ), ), + ContactFavIcon( + contact: state.contact!, + contactsCubit: context.watch<ContactsCubit>()), IconButton( icon: const Icon(Icons.cancel), onPressed: () { -- GitLab