chats date dividing bug fix

This commit is contained in:
MhdZiadHirati 2023-10-25 11:25:44 +03:00
parent 2fe2a57b9b
commit dcfd9ffce7
4 changed files with 24 additions and 8 deletions

View File

@ -136,7 +136,9 @@ class ChatScreen extends StatelessWidget {
itemBuilder: (BuildContext context, index) { itemBuilder: (BuildContext context, index) {
return ChatWidget( return ChatWidget(
room: chatController.rooms.result.data[index], room: chatController.rooms.result.data[index],
); onBack: () {
lastDate = 'today'.tr;
});
}, },
separatorBuilder: (BuildContext context, index) { separatorBuilder: (BuildContext context, index) {
// return Container(); // return Container();

View File

@ -26,7 +26,8 @@ class ChatDetails extends StatelessWidget {
final ChatController chatController = Get.find<ChatController>(); final ChatController chatController = Get.find<ChatController>();
final KeyboardVisibilityController _keyboardVisibilityController = final KeyboardVisibilityController _keyboardVisibilityController =
KeyboardVisibilityController(); KeyboardVisibilityController();
Room room = Get.arguments; Room room = Get.arguments['room'];
void Function()? onBack = Get.arguments['onBack'];
void loadMessages() { void loadMessages() {
if (chatController.currentRoom.value!.messages.page < 2) { if (chatController.currentRoom.value!.messages.page < 2) {
@ -88,6 +89,7 @@ class ChatDetails extends StatelessWidget {
chatUser: room.user, chatUser: room.user,
roomType: room.type, roomType: room.type,
avatar: room.user?.avatar, avatar: room.user?.avatar,
onBack: onBack,
), ),
Expanded( Expanded(
child: SingleChildScrollView( child: SingleChildScrollView(

View File

@ -19,8 +19,14 @@ class AppBarChatWidget extends StatelessWidget implements PreferredSizeWidget {
final HomeController homeController = Get.find<HomeController>(); final HomeController homeController = Get.find<HomeController>();
final ChatController chatController = Get.find<ChatController>(); final ChatController chatController = Get.find<ChatController>();
final RoomType roomType; final RoomType roomType;
AppBarChatWidget( final void Function()? onBack;
{super.key, required this.chatUser, this.avatar, required this.roomType}); AppBarChatWidget({
super.key,
required this.chatUser,
this.avatar,
required this.roomType,
this.onBack,
});
ChatUser? chatUser; ChatUser? chatUser;
final String? avatar; final String? avatar;
@override @override
@ -41,7 +47,7 @@ class AppBarChatWidget extends StatelessWidget implements PreferredSizeWidget {
if (roomType == RoomType.private) { if (roomType == RoomType.private) {
chatController.updateRoom(); chatController.updateRoom();
} }
onBack?.call();
RoutingManager.back(); RoutingManager.back();
}, },
).expanded(Responsive.isTablet() ? 0 : 1), ).expanded(Responsive.isTablet() ? 0 : 1),

View File

@ -11,8 +11,13 @@ import 'package:taafee_mobile/features/chat/presentation_layer/widgets/circle_av
import '../../data_layer/model/room.dart'; import '../../data_layer/model/room.dart';
class ChatWidget extends StatelessWidget { class ChatWidget extends StatelessWidget {
ChatWidget({super.key, required this.room}); ChatWidget({
super.key,
required this.room,
this.onBack,
});
final Room room; final Room room;
final void Function()? onBack;
final ChatController chatController = Get.find<ChatController>(); final ChatController chatController = Get.find<ChatController>();
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -63,7 +68,8 @@ class ChatWidget extends StatelessWidget {
), ),
).onTap(() { ).onTap(() {
chatController.setCurrentRoom(room); chatController.setCurrentRoom(room);
RoutingManager.to(RouteName.chatDetails, arguments: room); RoutingManager.to(RouteName.chatDetails,
arguments: {'room': room, 'onBack': onBack});
}); });
} }
} }