From dcfd9ffce7af951b2a233e3b86d4119cdbb0c7b1 Mon Sep 17 00:00:00 2001 From: MhdZiadHirati Date: Wed, 25 Oct 2023 11:25:44 +0300 Subject: [PATCH] chats date dividing bug fix --- .../chat/presentation_layer/screens/chat.dart | 6 ++++-- .../presentation_layer/screens/chat_details.dart | 4 +++- .../chat/presentation_layer/widgets/appbar.dart | 12 +++++++++--- .../chat/presentation_layer/widgets/chat_widget.dart | 10 ++++++++-- 4 files changed, 24 insertions(+), 8 deletions(-) diff --git a/lib/features/chat/presentation_layer/screens/chat.dart b/lib/features/chat/presentation_layer/screens/chat.dart index d418022..45c52c9 100644 --- a/lib/features/chat/presentation_layer/screens/chat.dart +++ b/lib/features/chat/presentation_layer/screens/chat.dart @@ -135,8 +135,10 @@ class ChatScreen extends StatelessWidget { physics: const NeverScrollableScrollPhysics(), itemBuilder: (BuildContext context, index) { return ChatWidget( - room: chatController.rooms.result.data[index], - ); + room: chatController.rooms.result.data[index], + onBack: () { + lastDate = 'today'.tr; + }); }, separatorBuilder: (BuildContext context, index) { // return Container(); diff --git a/lib/features/chat/presentation_layer/screens/chat_details.dart b/lib/features/chat/presentation_layer/screens/chat_details.dart index eb8aa5f..65179f7 100644 --- a/lib/features/chat/presentation_layer/screens/chat_details.dart +++ b/lib/features/chat/presentation_layer/screens/chat_details.dart @@ -26,7 +26,8 @@ class ChatDetails extends StatelessWidget { final ChatController chatController = Get.find(); final KeyboardVisibilityController _keyboardVisibilityController = KeyboardVisibilityController(); - Room room = Get.arguments; + Room room = Get.arguments['room']; + void Function()? onBack = Get.arguments['onBack']; void loadMessages() { if (chatController.currentRoom.value!.messages.page < 2) { @@ -88,6 +89,7 @@ class ChatDetails extends StatelessWidget { chatUser: room.user, roomType: room.type, avatar: room.user?.avatar, + onBack: onBack, ), Expanded( child: SingleChildScrollView( diff --git a/lib/features/chat/presentation_layer/widgets/appbar.dart b/lib/features/chat/presentation_layer/widgets/appbar.dart index f5fe009..95398a0 100644 --- a/lib/features/chat/presentation_layer/widgets/appbar.dart +++ b/lib/features/chat/presentation_layer/widgets/appbar.dart @@ -19,8 +19,14 @@ class AppBarChatWidget extends StatelessWidget implements PreferredSizeWidget { final HomeController homeController = Get.find(); final ChatController chatController = Get.find(); final RoomType roomType; - AppBarChatWidget( - {super.key, required this.chatUser, this.avatar, required this.roomType}); + final void Function()? onBack; + AppBarChatWidget({ + super.key, + required this.chatUser, + this.avatar, + required this.roomType, + this.onBack, + }); ChatUser? chatUser; final String? avatar; @override @@ -41,7 +47,7 @@ class AppBarChatWidget extends StatelessWidget implements PreferredSizeWidget { if (roomType == RoomType.private) { chatController.updateRoom(); } - + onBack?.call(); RoutingManager.back(); }, ).expanded(Responsive.isTablet() ? 0 : 1), diff --git a/lib/features/chat/presentation_layer/widgets/chat_widget.dart b/lib/features/chat/presentation_layer/widgets/chat_widget.dart index 2a5922b..064a026 100644 --- a/lib/features/chat/presentation_layer/widgets/chat_widget.dart +++ b/lib/features/chat/presentation_layer/widgets/chat_widget.dart @@ -11,8 +11,13 @@ import 'package:taafee_mobile/features/chat/presentation_layer/widgets/circle_av import '../../data_layer/model/room.dart'; class ChatWidget extends StatelessWidget { - ChatWidget({super.key, required this.room}); + ChatWidget({ + super.key, + required this.room, + this.onBack, + }); final Room room; + final void Function()? onBack; final ChatController chatController = Get.find(); @override Widget build(BuildContext context) { @@ -63,7 +68,8 @@ class ChatWidget extends StatelessWidget { ), ).onTap(() { chatController.setCurrentRoom(room); - RoutingManager.to(RouteName.chatDetails, arguments: room); + RoutingManager.to(RouteName.chatDetails, + arguments: {'room': room, 'onBack': onBack}); }); } }