TF-1813 Change ComposeFloatingButton to StatelessWidget
(cherry picked from commit f99199c2fcf1767bfa2287c220ca341a555ae191)
This commit is contained in:
+12
-6
@@ -9,13 +9,19 @@ import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
|
||||
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
||||
import 'package:tmail_ui_user/main/utils/app_utils.dart';
|
||||
|
||||
mixin ComposeFloatingButtonMixin {
|
||||
class ComposeFloatingButton extends StatelessWidget {
|
||||
|
||||
Widget buildComposeFloatingButton(
|
||||
BuildContext context,
|
||||
ScrollController scrollController,
|
||||
{VoidCallback? onTap}
|
||||
) {
|
||||
final ScrollController scrollController;
|
||||
final VoidCallback? onTap;
|
||||
|
||||
const ComposeFloatingButton({
|
||||
super.key,
|
||||
required this.scrollController,
|
||||
this.onTap
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final imagePaths = getBinding<ImagePaths>();
|
||||
|
||||
return Align(
|
||||
@@ -2,7 +2,7 @@
|
||||
import 'package:core/presentation/extensions/color_extension.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:tmail_ui_user/features/base/mixin/app_loader_mixin.dart';
|
||||
import 'package:tmail_ui_user/features/base/mixin/compose_floating_button_mixin.dart';
|
||||
import 'package:tmail_ui_user/features/base/widget/compose_floating_button.dart';
|
||||
import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart';
|
||||
import 'package:tmail_ui_user/features/sending_queue/presentation/sending_queue_controller.dart';
|
||||
import 'package:get/get.dart';
|
||||
@@ -10,9 +10,7 @@ import 'package:tmail_ui_user/features/sending_queue/presentation/widgets/app_ba
|
||||
import 'package:tmail_ui_user/features/sending_queue/presentation/widgets/banner_message_sending_queue_widget.dart';
|
||||
import 'package:tmail_ui_user/features/sending_queue/presentation/widgets/sending_email_tile_widget.dart';
|
||||
|
||||
class SendingQueueView extends GetWidget<SendingQueueController>
|
||||
with AppLoaderMixin,
|
||||
ComposeFloatingButtonMixin {
|
||||
class SendingQueueView extends GetWidget<SendingQueueController> with AppLoaderMixin {
|
||||
|
||||
const SendingQueueView({super.key});
|
||||
|
||||
@@ -33,9 +31,8 @@ class SendingQueueView extends GetWidget<SendingQueueController>
|
||||
),
|
||||
),
|
||||
),
|
||||
floatingActionButton: buildComposeFloatingButton(
|
||||
context,
|
||||
controller.listSendingEmailController,
|
||||
floatingActionButton: ComposeFloatingButton(
|
||||
scrollController: controller.listSendingEmailController,
|
||||
onTap: () => controller.dashboardController!.goToComposer(ComposerArguments())
|
||||
),
|
||||
);
|
||||
|
||||
@@ -6,7 +6,7 @@ import 'package:flutter_svg/flutter_svg.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:model/model.dart';
|
||||
import 'package:tmail_ui_user/features/base/mixin/app_loader_mixin.dart';
|
||||
import 'package:tmail_ui_user/features/base/mixin/compose_floating_button_mixin.dart';
|
||||
import 'package:tmail_ui_user/features/base/widget/compose_floating_button.dart';
|
||||
import 'package:tmail_ui_user/features/base/mixin/popup_menu_widget_mixin.dart';
|
||||
import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart';
|
||||
import 'package:tmail_ui_user/features/email/presentation/widgets/email_action_cupertino_action_sheet_action_builder.dart';
|
||||
@@ -33,8 +33,7 @@ import 'package:tmail_ui_user/main/utils/app_utils.dart';
|
||||
class ThreadView extends GetWidget<ThreadController>
|
||||
with AppLoaderMixin,
|
||||
FilterEmailPopupMenuMixin,
|
||||
PopupMenuWidgetMixin,
|
||||
ComposeFloatingButtonMixin {
|
||||
PopupMenuWidgetMixin {
|
||||
|
||||
final _responsiveUtils = Get.find<ResponsiveUtils>();
|
||||
final _imagePaths = Get.find<ImagePaths>();
|
||||
@@ -187,9 +186,8 @@ class ThreadView extends GetWidget<ThreadController>
|
||||
padding: BuildUtils.isWeb
|
||||
? EdgeInsets.zero
|
||||
: controller.listEmailSelected.isNotEmpty ? const EdgeInsets.only(bottom: 70) : EdgeInsets.zero,
|
||||
child: buildComposeFloatingButton(
|
||||
context,
|
||||
controller.listEmailController,
|
||||
child: ComposeFloatingButton(
|
||||
scrollController: controller.listEmailController,
|
||||
onTap: () => controller.mailboxDashBoardController.goToComposer(ComposerArguments())
|
||||
),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user