diff --git a/README.md b/README.md index c7c9226..9a3c869 100644 --- a/README.md +++ b/README.md @@ -103,7 +103,6 @@ A simple and user-friendly Matrix client made with Flutter and the Matrix Dart S ## Known Bugs -- Sometimes the app refreshes, I believe due to some controllers invalidating. This needs investigation as to why it happens. - Sometimes links don't parse properly, this is apparent in the Maunium Ping Room. We might possibly need a regex change. ## Development diff --git a/lib/controllers/events_controller.dart b/lib/controllers/events_controller.dart index 008ff2a..37b9ff2 100644 --- a/lib/controllers/events_controller.dart +++ b/lib/controllers/events_controller.dart @@ -14,7 +14,9 @@ class EventsController extends AsyncNotifier { from: from, limit: 32, ); - ref.watch(FromController.provider(room).notifier).set(response.end); + if (ref.mounted) { + ref.watch(FromController.provider(room).notifier).set(response.end); + } return response; } diff --git a/lib/controllers/room_chat_controller.dart b/lib/controllers/room_chat_controller.dart index 2583c01..fde8d26 100644 --- a/lib/controllers/room_chat_controller.dart +++ b/lib/controllers/room_chat_controller.dart @@ -14,9 +14,7 @@ class RoomChatController extends AsyncNotifier { @override Future build() async { - final response = await ref.watch( - EventsController.provider(room).selectAsync((a) => a), - ); + final response = await ref.watch(EventsController.provider(room).future); ref.onDispose( room.client.onTimelineEvent.stream.listen((event) async { diff --git a/lib/widgets/chat_page/top_widget.dart b/lib/widgets/chat_page/top_widget.dart index 15f59bd..3f84c3d 100644 --- a/lib/widgets/chat_page/top_widget.dart +++ b/lib/widgets/chat_page/top_widget.dart @@ -87,7 +87,9 @@ class TopWidget extends ConsumerWidget { ); }, ), - if (alwaysShow || groupStatus?.isFirst != false) + if (alwaysShow || + groupStatus?.isFirst != false || + message.metadata?["reply"] != null) InkWell( onTap: () => showAboutDialog(context: context), // TODO: Show user profile