diff --git a/lib/features/email/presentation/widgets/calendar_event/event_attendee_detail_widget.dart b/lib/features/email/presentation/widgets/calendar_event/event_attendee_detail_widget.dart index 3be6ae8cd..af963b92c 100644 --- a/lib/features/email/presentation/widgets/calendar_event/event_attendee_detail_widget.dart +++ b/lib/features/email/presentation/widgets/calendar_event/event_attendee_detail_widget.dart @@ -6,6 +6,7 @@ import 'package:jmap_dart_client/jmap/mail/calendar/properties/calendar_organize import 'package:tmail_ui_user/features/email/presentation/extensions/list_attendee_extension.dart'; import 'package:tmail_ui_user/features/email/presentation/styles/event_attendee_detail_widget_styles.dart'; import 'package:tmail_ui_user/features/email/presentation/widgets/calendar_event/attendee_widget.dart'; +import 'package:tmail_ui_user/features/email/presentation/widgets/calendar_event/hide_all_attendees_button_widget.dart'; import 'package:tmail_ui_user/features/email/presentation/widgets/calendar_event/organizer_widget.dart'; import 'package:tmail_ui_user/features/email/presentation/widgets/calendar_event/see_all_attendees_button_widget.dart'; import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; @@ -77,6 +78,18 @@ class _EventAttendeeDetailWidgetState extends State { } ), ) + else if (widget.attendees.length > EventAttendeeDetailWidget.maxAttendeeDisplayed) + Padding( + padding: const EdgeInsets.only(top: EventAttendeeDetailWidgetStyles.fieldTopPadding), + child: HideAllAttendeesButtonWidget( + onTap: () { + setState(() { + _attendeesDisplayed = _splitAttendees(widget.attendees); + _isShowAllAttendee = false; + }); + } + ), + ) ] )) ], diff --git a/lib/features/email/presentation/widgets/calendar_event/hide_all_attendees_button_widget.dart b/lib/features/email/presentation/widgets/calendar_event/hide_all_attendees_button_widget.dart new file mode 100644 index 000000000..7707920a7 --- /dev/null +++ b/lib/features/email/presentation/widgets/calendar_event/hide_all_attendees_button_widget.dart @@ -0,0 +1,35 @@ + +import 'package:flutter/cupertino.dart'; +import 'package:tmail_ui_user/features/base/widget/material_text_button.dart'; +import 'package:tmail_ui_user/features/email/presentation/styles/see_all_attendees_button_widget_styles.dart'; +import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; + +class HideAllAttendeesButtonWidget extends StatelessWidget { + + final VoidCallback onTap; + + const HideAllAttendeesButtonWidget({ + super.key, + required this.onTap + }); + + @override + Widget build(BuildContext context) { + return Transform( + transform: Matrix4.translationValues(SeeAllAttendeesButtonWidgetStyles.horizontalMargin, 0.0, 0.0), + child: MaterialTextButton( + label: AppLocalizations.of(context).hide, + onTap: onTap, + borderRadius: SeeAllAttendeesButtonWidgetStyles.borderRadius, + padding: const EdgeInsetsDirectional.symmetric( + horizontal: SeeAllAttendeesButtonWidgetStyles.horizontalPadding, + vertical: SeeAllAttendeesButtonWidgetStyles.verticalPadding + ), + customStyle: const TextStyle( + fontSize: SeeAllAttendeesButtonWidgetStyles.textSize, + color: SeeAllAttendeesButtonWidgetStyles.textColor + ), + ), + ); + } +}