show error on channel loading
This commit is contained in:
@@ -125,7 +125,7 @@ class _ChannelListViewState extends State<ChannelListView> {
|
||||
return widget.errorBuilder(snapshot.error);
|
||||
}
|
||||
|
||||
String message = snapshot.error.toString();
|
||||
var message = snapshot.error.toString();
|
||||
if (snapshot.error is DioError) {
|
||||
final dioError = snapshot.error as DioError;
|
||||
if (dioError.type == DioErrorType.RESPONSE) {
|
||||
@@ -287,6 +287,17 @@ class _ChannelListViewState extends State<ChannelListView> {
|
||||
stream: streamChat.queryChannelsLoading,
|
||||
initialData: false,
|
||||
builder: (context, snapshot) {
|
||||
if (snapshot.hasError) {
|
||||
return Container(
|
||||
color: Color(0xffd0021B).withAlpha(26),
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 16.0),
|
||||
child: Center(
|
||||
child: Text('Error loading messages'),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
return Container(
|
||||
height: 100,
|
||||
padding: EdgeInsets.all(32),
|
||||
|
||||
@@ -118,7 +118,7 @@ class ChannelPreview extends StatelessWidget {
|
||||
return SizedBox();
|
||||
}
|
||||
|
||||
String text = lastMessage.text;
|
||||
var text = lastMessage.text;
|
||||
if (lastMessage.isDeleted) {
|
||||
text = 'This message was deleted.';
|
||||
} else if (lastMessage.attachments != null) {
|
||||
|
||||
@@ -95,7 +95,7 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
final alignment =
|
||||
_isMyMessage ? Alignment.centerRight : Alignment.centerLeft;
|
||||
|
||||
List<Widget> row = <Widget>[
|
||||
var row = List<Widget>.from([
|
||||
Column(
|
||||
crossAxisAlignment:
|
||||
_isMyMessage ? CrossAxisAlignment.end : CrossAxisAlignment.start,
|
||||
@@ -113,7 +113,7 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
width: 40,
|
||||
)
|
||||
: _buildUserAvatar(),
|
||||
];
|
||||
]);
|
||||
|
||||
if (!_isMyMessage) {
|
||||
row = row.reversed.toList();
|
||||
@@ -309,7 +309,7 @@ class _MessageWidgetState extends State<MessageWidget>
|
||||
[]);
|
||||
|
||||
if (widget.message.text.trim().isNotEmpty) {
|
||||
String text = widget.message.text;
|
||||
var text = widget.message.text;
|
||||
text = _replaceMentions(text);
|
||||
|
||||
column.addAll(
|
||||
|
||||
@@ -197,20 +197,23 @@ class StreamChatState extends State<StreamChat> {
|
||||
PaginationParams paginationParams,
|
||||
Map<String, dynamic> options,
|
||||
}) async {
|
||||
if (_queryChannelsLoadingController.value) {
|
||||
if (_queryChannelsLoadingController.value == true) {
|
||||
return;
|
||||
}
|
||||
_queryChannelsLoadingController.sink.add(true);
|
||||
|
||||
try {
|
||||
widget.client.queryChannels(
|
||||
await widget.client.queryChannels(
|
||||
filter: filter,
|
||||
sort: sortOptions,
|
||||
options: options,
|
||||
paginationParams: paginationParams,
|
||||
);
|
||||
} finally {
|
||||
_queryChannelsLoadingController.sink.add(false);
|
||||
} catch (err, stackTrace) {
|
||||
_queryChannelsLoadingController.addError(err, stackTrace);
|
||||
} finally {
|
||||
// _queryChannelsLoadingController.sink.add(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user