+ChangeNotifier Fixes
+Signout Fixes +
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_spinkit/flutter_spinkit.dart';
|
||||
import 'package:messaging_app/components/messaging_provider.dart';
|
||||
@@ -25,38 +23,8 @@ class RecentConverstationsPage extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _RecentConverstationsPageState extends State<RecentConverstationsPage> {
|
||||
late MessagingProviders _auth;
|
||||
List<Conversations> streamData = [];
|
||||
|
||||
// To listen to the conversations stream
|
||||
@override
|
||||
void dispose() {
|
||||
super.dispose();
|
||||
loadStream();
|
||||
}
|
||||
|
||||
loadStream() async {
|
||||
streamData =
|
||||
await MessagingProviders.instance.getUserConversations(_auth.user!.$id);
|
||||
}
|
||||
|
||||
subscribe() {
|
||||
MessagingProviders.instance.subscription!.stream.listen((data) {
|
||||
final event = data.events.first;
|
||||
if (event.endsWith('.create')) {
|
||||
streamData.add(data.payload['']);
|
||||
} else if (event.endsWith('.update')) {}
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
MessagingProviders.instance.subscription!.stream.listen((data) {
|
||||
final event = data.events.first;
|
||||
;
|
||||
});
|
||||
}
|
||||
//
|
||||
MessagingProviders _auth = MessagingProviders.instance;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
@@ -64,7 +32,7 @@ class _RecentConverstationsPageState extends State<RecentConverstationsPage> {
|
||||
height: widget._deviceHeight,
|
||||
width: widget._deviceWidth,
|
||||
child: ChangeNotifierProvider<MessagingProviders>.value(
|
||||
value: MessagingProviders.instance,
|
||||
value: _auth,
|
||||
child: _conversationView(context),
|
||||
),
|
||||
);
|
||||
@@ -78,8 +46,7 @@ class _RecentConverstationsPageState extends State<RecentConverstationsPage> {
|
||||
height: widget._deviceHeight,
|
||||
width: widget._deviceWidth,
|
||||
child: StreamBuilder<List<Conversations>>(
|
||||
stream: MessagingProviders.instance
|
||||
.getUserConversation(_auth.user!.$id),
|
||||
stream: _auth.getUserConversation(_auth.user!.$id),
|
||||
builder: (_context, _snapshot) {
|
||||
if (_snapshot.hasData) {
|
||||
return ListView.builder(
|
||||
@@ -95,8 +62,9 @@ class _RecentConverstationsPageState extends State<RecentConverstationsPage> {
|
||||
builder: (BuildContext _context) {
|
||||
return ConversationsPage(
|
||||
chatId: _chatId,
|
||||
chatName: _details.name,
|
||||
chatImage: _details.image,
|
||||
userName: _details.name,
|
||||
userImage : _details.image,
|
||||
userEmail: _details.email,
|
||||
);
|
||||
},
|
||||
),
|
||||
@@ -104,9 +72,11 @@ class _RecentConverstationsPageState extends State<RecentConverstationsPage> {
|
||||
},
|
||||
title: Text(_details.name),
|
||||
subtitle: Text(
|
||||
_details.type == 'text'
|
||||
? _details.lastMessage!
|
||||
: 'attachment: image',
|
||||
_details.type == ''
|
||||
? 'start chatting...'
|
||||
: _details.type == 'text'
|
||||
? _details.lastMessage!
|
||||
: 'attachment: image',
|
||||
),
|
||||
leading: Container(
|
||||
width: 50,
|
||||
|
||||
Reference in New Issue
Block a user