merge-requests/91/head
Aamir Muhammad 3 years ago
parent 70ffb8afd8
commit 0f7afa911a

@ -124,8 +124,10 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
), ),
); );
notifyListeners(); notifyListeners();
if (searchedChats!.isNotEmpty) {
getUserImages(); getUserImages();
} }
}
Future invokeUserChatHistoryNotDeliveredAsync({required int userId}) async { Future invokeUserChatHistoryNotDeliveredAsync({required int userId}) async {
await chatHubConnection.invoke("GetUserChatHistoryNotDeliveredAsync", args: [userId]); await chatHubConnection.invoke("GetUserChatHistoryNotDeliveredAsync", args: [userId]);
@ -345,6 +347,14 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
} }
} }
} }
dynamic contain = searchedChats!.where((ChatUser element) => element.id == data.first.currentUserId);
if (contain.isEmpty) {
print("Contain Was Emptyyyy");
searchedChats!.add(
ChatUser(id: data.first.currentUserId, userName: data.first.currentUserName, unreadMessageCount: 0, isImageLoading: false, image: "", isImageLoaded: true),
);
notifyListeners();
}
setMsgTune(); setMsgTune();
userChatHistory.insert(0, data.first); userChatHistory.insert(0, data.first);
@ -740,6 +750,7 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin {
} }
} }
} }
notifyListeners(); notifyListeners();
} }

@ -19,6 +19,7 @@ import 'package:mohem_flutter_app/widgets/bottom_sheets/search_employee_bottom_s
import 'package:mohem_flutter_app/widgets/circular_avatar.dart'; import 'package:mohem_flutter_app/widgets/circular_avatar.dart';
import 'package:mohem_flutter_app/widgets/shimmer/dashboard_shimmer_widget.dart'; import 'package:mohem_flutter_app/widgets/shimmer/dashboard_shimmer_widget.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:pull_to_refresh/pull_to_refresh.dart';
class ChatHomeScreen extends StatefulWidget { class ChatHomeScreen extends StatefulWidget {
const ChatHomeScreen({Key? key}) : super(key: key); const ChatHomeScreen({Key? key}) : super(key: key);
@ -31,6 +32,16 @@ class _ChatHomeScreenState extends State<ChatHomeScreen> {
TextEditingController search = TextEditingController(); TextEditingController search = TextEditingController();
late ChatProviderModel data; late ChatProviderModel data;
final RefreshController _rc = RefreshController(initialRefresh: false);
void getMoreChat() async {
data.getUserRecentChats();
await Future.delayed(
const Duration(milliseconds: 1000),
);
_rc.loadComplete();
}
@override @override
void initState() { void initState() {
super.initState(); super.initState();
@ -84,7 +95,18 @@ class _ChatHomeScreenState extends State<ChatHomeScreen> {
), ),
).paddingOnly(top: 20, bottom: 14), ).paddingOnly(top: 20, bottom: 14),
if (m.searchedChats != null) if (m.searchedChats != null)
ListView.separated( SmartRefresher(
enablePullDown: true,
enablePullUp: false,
onRefresh: (){
getMoreChat();
},
header: const MaterialClassicHeader(
color: MyColors.gradiantEndColor,
),
controller: _rc,
reverse: false,
child: ListView.separated(
itemCount: m.searchedChats!.length, itemCount: m.searchedChats!.length,
shrinkWrap: true, shrinkWrap: true,
physics: const ClampingScrollPhysics(), physics: const ClampingScrollPhysics(),
@ -127,7 +149,9 @@ class _ChatHomeScreenState extends State<ChatHomeScreen> {
).circle(10), ).circle(10),
) )
], ],
), ).onPress(() {
print(jsonEncode(m.searchedChats![index]));
}),
Column( Column(
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
@ -200,6 +224,7 @@ class _ChatHomeScreenState extends State<ChatHomeScreen> {
}, },
separatorBuilder: (BuildContext context, int index) => const Divider(color: MyColors.lightGreyE5Color).paddingOnly(left: 59), separatorBuilder: (BuildContext context, int index) => const Divider(color: MyColors.lightGreyE5Color).paddingOnly(left: 59),
), ),
).expanded,
], ],
).paddingOnly(left: 21, right: 21); ).paddingOnly(left: 21, right: 21);
}, },

Loading…
Cancel
Save