From eca4825c704e4725ee0944b0bea604b95807e57f Mon Sep 17 00:00:00 2001 From: krille-chan Date: Sat, 28 Oct 2023 13:03:16 +0200 Subject: [PATCH] build: Update packages and flutter super.key refactoring --- lib/pages/add_story/add_story.dart | 2 +- lib/pages/add_story/add_story_view.dart | 2 +- lib/pages/add_story/invite_story_page.dart | 4 +- lib/pages/archive/archive.dart | 2 +- lib/pages/archive/archive_view.dart | 2 +- lib/pages/bootstrap/bootstrap_dialog.dart | 4 +- lib/pages/chat/add_widget_tile.dart | 2 +- lib/pages/chat/add_widget_tile_view.dart | 3 +- lib/pages/chat/chat.dart | 8 +- lib/pages/chat/chat_app_bar_title.dart | 2 +- lib/pages/chat/chat_emoji_picker.dart | 2 +- lib/pages/chat/chat_event_list.dart | 4 +- lib/pages/chat/chat_input_row.dart | 4 +- lib/pages/chat/chat_view.dart | 2 +- lib/pages/chat/edit_widgets_dialog.dart | 2 +- lib/pages/chat/encryption_button.dart | 2 +- lib/pages/chat/event_info_dialog.dart | 4 +- lib/pages/chat/events/audio_player.dart | 3 +- lib/pages/chat/events/cute_events.dart | 8 +- lib/pages/chat/events/html_message.dart | 4 +- lib/pages/chat/events/image_bubble.dart | 4 +- lib/pages/chat/events/map_bubble.dart | 4 +- lib/pages/chat/events/message.dart | 4 +- lib/pages/chat/events/message_content.dart | 7 +- .../chat/events/message_download_content.dart | 3 +- lib/pages/chat/events/message_reactions.dart | 64 +++++++-------- lib/pages/chat/events/reply_content.dart | 4 +- lib/pages/chat/events/state_message.dart | 2 +- lib/pages/chat/events/sticker.dart | 2 +- .../events/verification_request_content.dart | 4 +- lib/pages/chat/events/video_player.dart | 2 +- lib/pages/chat/input_bar.dart | 4 +- lib/pages/chat/pinned_events.dart | 2 +- lib/pages/chat/reactions_picker.dart | 2 +- lib/pages/chat/recording_dialog.dart | 4 +- lib/pages/chat/reply_display.dart | 2 +- lib/pages/chat/seen_by_row.dart | 17 ++-- lib/pages/chat/send_file_dialog.dart | 4 +- lib/pages/chat/send_location_dialog.dart | 4 +- lib/pages/chat/sticker_picker_dialog.dart | 2 +- lib/pages/chat/tombstone_display.dart | 2 +- lib/pages/chat/typing_indicators.dart | 2 +- lib/pages/chat_details/chat_details.dart | 7 +- lib/pages/chat_details/chat_details_view.dart | 2 +- .../chat_details/participant_list_item.dart | 2 +- .../chat_encryption_settings.dart | 2 +- .../chat_encryption_settings_view.dart | 3 +- lib/pages/chat_list/chat_list.dart | 4 +- lib/pages/chat_list/chat_list_body.dart | 5 +- lib/pages/chat_list/chat_list_header.dart | 2 +- lib/pages/chat_list/chat_list_item.dart | 4 +- lib/pages/chat_list/chat_list_view.dart | 2 +- .../chat_list/client_chooser_button.dart | 79 +++++++++---------- lib/pages/chat_list/navi_rail_item.dart | 4 +- lib/pages/chat_list/search_title.dart | 4 +- lib/pages/chat_list/space_view.dart | 4 +- lib/pages/chat_list/start_chat_fab.dart | 4 +- lib/pages/chat_list/stories_header.dart | 5 +- .../chat_permissions_settings.dart | 2 +- .../chat_permissions_settings_view.dart | 3 +- .../permission_list_tile.dart | 4 +- .../device_settings/device_settings.dart | 2 +- .../device_settings/device_settings_view.dart | 2 +- .../user_device_list_item.dart | 4 +- lib/pages/dialer/dialer.dart | 7 +- lib/pages/dialer/pip/pip_view.dart | 4 +- .../homeserver_picker/homeserver_app_bar.dart | 3 +- .../homeserver_bottom_sheet.dart | 3 +- .../homeserver_picker/homeserver_picker.dart | 2 +- .../homeserver_picker_view.dart | 5 +- lib/pages/image_viewer/image_viewer.dart | 2 +- lib/pages/image_viewer/image_viewer_view.dart | 2 +- .../invitation_selection.dart | 4 +- .../invitation_selection_view.dart | 5 +- .../key_verification_dialog.dart | 4 +- lib/pages/login/login.dart | 2 +- lib/pages/login/login_view.dart | 2 +- lib/pages/new_group/new_group.dart | 2 +- lib/pages/new_group/new_group_view.dart | 2 +- .../new_private_chat/new_private_chat.dart | 2 +- .../new_private_chat_view.dart | 2 +- .../new_private_chat/qr_scanner_modal.dart | 2 +- lib/pages/new_space/new_space.dart | 2 +- lib/pages/new_space/new_space_view.dart | 2 +- lib/pages/settings/settings.dart | 2 +- lib/pages/settings/settings_view.dart | 2 +- lib/pages/settings_3pid/settings_3pid.dart | 2 +- .../settings_3pid/settings_3pid_view.dart | 2 +- lib/pages/settings_chat/settings_chat.dart | 2 +- .../settings_chat/settings_chat_view.dart | 2 +- .../import_archive_dialog.dart | 4 +- .../settings_emotes/settings_emotes.dart | 2 +- .../settings_emotes/settings_emotes_view.dart | 2 +- .../settings_ignore_list.dart | 2 +- .../settings_ignore_list_view.dart | 2 +- .../settings_multiple_emotes.dart | 2 +- .../settings_multiple_emotes_view.dart | 3 +- .../settings_notifications.dart | 2 +- .../settings_notifications_view.dart | 3 +- .../settings_security/settings_security.dart | 2 +- .../settings_security_view.dart | 2 +- .../settings_stories/settings_stories.dart | 2 +- .../settings_stories_view.dart | 2 +- lib/pages/settings_style/settings_style.dart | 2 +- .../settings_style/settings_style_view.dart | 2 +- lib/pages/story/story_page.dart | 2 +- lib/pages/story/story_view.dart | 2 +- .../user_bottom_sheet/user_bottom_sheet.dart | 5 +- .../user_bottom_sheet_view.dart | 2 +- .../flutter_hive_collections_database.dart | 12 +-- lib/widgets/adaptive_flat_button.dart | 4 +- lib/widgets/avatar.dart | 4 +- lib/widgets/chat_settings_popup_menu.dart | 3 +- lib/widgets/connection_status_header.dart | 2 +- lib/widgets/content_banner.dart | 4 +- lib/widgets/fluffy_chat_app.dart | 4 +- lib/widgets/layouts/empty_page.dart | 2 +- lib/widgets/layouts/login_scaffold.dart | 4 +- lib/widgets/layouts/max_width_body.dart | 4 +- lib/widgets/layouts/two_column_layout.dart | 4 +- lib/widgets/log_view.dart | 2 +- lib/widgets/matrix.dart | 4 +- lib/widgets/mxc_image.dart | 4 +- lib/widgets/public_room_bottom_sheet.dart | 4 +- lib/widgets/settings_switch_list_tile.dart | 4 +- lib/widgets/theme_builder.dart | 4 +- lib/widgets/unread_rooms_badge.dart | 4 +- pubspec.lock | 52 ++++++------ pubspec.yaml | 16 ++-- 129 files changed, 294 insertions(+), 324 deletions(-) diff --git a/lib/pages/add_story/add_story.dart b/lib/pages/add_story/add_story.dart index 323d103b..6f96fdf6 100644 --- a/lib/pages/add_story/add_story.dart +++ b/lib/pages/add_story/add_story.dart @@ -22,7 +22,7 @@ import 'package:fluffychat/widgets/matrix.dart'; import '../../utils/matrix_sdk_extensions/client_stories_extension.dart'; class AddStoryPage extends StatefulWidget { - const AddStoryPage({Key? key}) : super(key: key); + const AddStoryPage({super.key}); @override AddStoryController createState() => AddStoryController(); diff --git a/lib/pages/add_story/add_story_view.dart b/lib/pages/add_story/add_story_view.dart index 12f7dad2..ea828aad 100644 --- a/lib/pages/add_story/add_story_view.dart +++ b/lib/pages/add_story/add_story_view.dart @@ -8,7 +8,7 @@ import 'add_story.dart'; class AddStoryView extends StatelessWidget { final AddStoryController controller; - const AddStoryView(this.controller, {Key? key}) : super(key: key); + const AddStoryView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/add_story/invite_story_page.dart b/lib/pages/add_story/invite_story_page.dart index c28af441..c62a0b81 100644 --- a/lib/pages/add_story/invite_story_page.dart +++ b/lib/pages/add_story/invite_story_page.dart @@ -14,8 +14,8 @@ class InviteStoryPage extends StatefulWidget { final Room? storiesRoom; const InviteStoryPage({ required this.storiesRoom, - Key? key, - }) : super(key: key); + super.key, + }); @override InviteStoryPageState createState() => InviteStoryPageState(); diff --git a/lib/pages/archive/archive.dart b/lib/pages/archive/archive.dart index 823fe836..aba2dace 100644 --- a/lib/pages/archive/archive.dart +++ b/lib/pages/archive/archive.dart @@ -9,7 +9,7 @@ import 'package:fluffychat/pages/archive/archive_view.dart'; import 'package:fluffychat/widgets/matrix.dart'; class Archive extends StatefulWidget { - const Archive({Key? key}) : super(key: key); + const Archive({super.key}); @override ArchiveController createState() => ArchiveController(); diff --git a/lib/pages/archive/archive_view.dart b/lib/pages/archive/archive_view.dart index d0df690b..6dde7b72 100644 --- a/lib/pages/archive/archive_view.dart +++ b/lib/pages/archive/archive_view.dart @@ -10,7 +10,7 @@ import 'package:fluffychat/widgets/layouts/max_width_body.dart'; class ArchiveView extends StatelessWidget { final ArchiveController controller; - const ArchiveView(this.controller, {Key? key}) : super(key: key); + const ArchiveView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/bootstrap/bootstrap_dialog.dart b/lib/pages/bootstrap/bootstrap_dialog.dart index 20128b06..8a227cb0 100644 --- a/lib/pages/bootstrap/bootstrap_dialog.dart +++ b/lib/pages/bootstrap/bootstrap_dialog.dart @@ -18,10 +18,10 @@ class BootstrapDialog extends StatefulWidget { final bool wipe; final Client client; const BootstrapDialog({ - Key? key, + super.key, this.wipe = false, required this.client, - }) : super(key: key); + }); Future show(BuildContext context) => showAdaptiveBottomSheet( context: context, diff --git a/lib/pages/chat/add_widget_tile.dart b/lib/pages/chat/add_widget_tile.dart index 89ad8976..11e3cce5 100644 --- a/lib/pages/chat/add_widget_tile.dart +++ b/lib/pages/chat/add_widget_tile.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/pages/chat/add_widget_tile_view.dart'; class AddWidgetTile extends StatefulWidget { final Room room; - const AddWidgetTile({Key? key, required this.room}) : super(key: key); + const AddWidgetTile({super.key, required this.room}); @override State createState() => AddWidgetTileState(); diff --git a/lib/pages/chat/add_widget_tile_view.dart b/lib/pages/chat/add_widget_tile_view.dart index 7ce441e8..d7ac53ef 100644 --- a/lib/pages/chat/add_widget_tile_view.dart +++ b/lib/pages/chat/add_widget_tile_view.dart @@ -8,8 +8,7 @@ import 'package:fluffychat/pages/chat/add_widget_tile.dart'; class AddWidgetTileView extends StatelessWidget { final AddWidgetTileState controller; - const AddWidgetTileView({Key? key, required this.controller}) - : super(key: key); + const AddWidgetTileView({super.key, required this.controller}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/chat.dart b/lib/pages/chat/chat.dart index 9de368fc..8bda7266 100644 --- a/lib/pages/chat/chat.dart +++ b/lib/pages/chat/chat.dart @@ -43,9 +43,9 @@ class ChatPage extends StatelessWidget { final String roomId; const ChatPage({ - Key? key, + super.key, required this.roomId, - }) : super(key: key); + }); @override Widget build(BuildContext context) { @@ -95,9 +95,9 @@ class ChatPageWithRoom extends StatefulWidget { final Room room; const ChatPageWithRoom({ - Key? key, + super.key, required this.room, - }) : super(key: key); + }); @override ChatController createState() => ChatController(); diff --git a/lib/pages/chat/chat_app_bar_title.dart b/lib/pages/chat/chat_app_bar_title.dart index ae659fa0..2e755f7d 100644 --- a/lib/pages/chat/chat_app_bar_title.dart +++ b/lib/pages/chat/chat_app_bar_title.dart @@ -9,7 +9,7 @@ import 'package:fluffychat/widgets/avatar.dart'; class ChatAppBarTitle extends StatelessWidget { final ChatController controller; - const ChatAppBarTitle(this.controller, {Key? key}) : super(key: key); + const ChatAppBarTitle(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/chat_emoji_picker.dart b/lib/pages/chat/chat_emoji_picker.dart index aaad9740..78bdda10 100644 --- a/lib/pages/chat/chat_emoji_picker.dart +++ b/lib/pages/chat/chat_emoji_picker.dart @@ -8,7 +8,7 @@ import 'chat.dart'; class ChatEmojiPicker extends StatelessWidget { final ChatController controller; - const ChatEmojiPicker(this.controller, {Key? key}) : super(key: key); + const ChatEmojiPicker(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/chat_event_list.dart b/lib/pages/chat/chat_event_list.dart index 85cf557a..2fd09473 100644 --- a/lib/pages/chat/chat_event_list.dart +++ b/lib/pages/chat/chat_event_list.dart @@ -16,9 +16,9 @@ import 'package:fluffychat/utils/platform_infos.dart'; class ChatEventList extends StatelessWidget { final ChatController controller; const ChatEventList({ - Key? key, + super.key, required this.controller, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/chat_input_row.dart b/lib/pages/chat/chat_input_row.dart index 7d2d083a..c7401d0d 100644 --- a/lib/pages/chat/chat_input_row.dart +++ b/lib/pages/chat/chat_input_row.dart @@ -17,7 +17,7 @@ import 'input_bar.dart'; class ChatInputRow extends StatelessWidget { final ChatController controller; - const ChatInputRow(this.controller, {Key? key}) : super(key: key); + const ChatInputRow(this.controller, {super.key}); @override Widget build(BuildContext context) { @@ -278,7 +278,7 @@ class ChatInputRow extends StatelessWidget { class _ChatAccountPicker extends StatelessWidget { final ChatController controller; - const _ChatAccountPicker(this.controller, {Key? key}) : super(key: key); + const _ChatAccountPicker(this.controller); void _popupMenuButtonSelected(String mxid, BuildContext context) { final client = Matrix.of(context) diff --git a/lib/pages/chat/chat_view.dart b/lib/pages/chat/chat_view.dart index a92d6ce8..efa0fbde 100644 --- a/lib/pages/chat/chat_view.dart +++ b/lib/pages/chat/chat_view.dart @@ -29,7 +29,7 @@ enum _EventContextAction { info, report } class ChatView extends StatelessWidget { final ChatController controller; - const ChatView(this.controller, {Key? key}) : super(key: key); + const ChatView(this.controller, {super.key}); List _appBarActions(BuildContext context) { if (controller.selectMode) { diff --git a/lib/pages/chat/edit_widgets_dialog.dart b/lib/pages/chat/edit_widgets_dialog.dart index 7d9579a1..2ba163fe 100644 --- a/lib/pages/chat/edit_widgets_dialog.dart +++ b/lib/pages/chat/edit_widgets_dialog.dart @@ -8,7 +8,7 @@ import 'add_widget_tile.dart'; class EditWidgetsDialog extends StatelessWidget { final Room room; - const EditWidgetsDialog({Key? key, required this.room}) : super(key: key); + const EditWidgetsDialog({super.key, required this.room}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/encryption_button.dart b/lib/pages/chat/encryption_button.dart index d5a4481c..c68a1c97 100644 --- a/lib/pages/chat/encryption_button.dart +++ b/lib/pages/chat/encryption_button.dart @@ -8,7 +8,7 @@ import '../../widgets/matrix.dart'; class EncryptionButton extends StatelessWidget { final Room room; - const EncryptionButton(this.room, {Key? key}) : super(key: key); + const EncryptionButton(this.room, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/event_info_dialog.dart b/lib/pages/chat/event_info_dialog.dart index 5ac29c80..0846e137 100644 --- a/lib/pages/chat/event_info_dialog.dart +++ b/lib/pages/chat/event_info_dialog.dart @@ -24,8 +24,8 @@ class EventInfoDialog extends StatelessWidget { const EventInfoDialog({ required this.event, required this.l10n, - Key? key, - }) : super(key: key); + super.key, + }); String get prettyJson { const JsonDecoder decoder = JsonDecoder(); diff --git a/lib/pages/chat/events/audio_player.dart b/lib/pages/chat/events/audio_player.dart index 1b0586d2..6335b54b 100644 --- a/lib/pages/chat/events/audio_player.dart +++ b/lib/pages/chat/events/audio_player.dart @@ -20,8 +20,7 @@ class AudioPlayerWidget extends StatefulWidget { static const int wavesCount = 40; - const AudioPlayerWidget(this.event, {this.color = Colors.black, Key? key}) - : super(key: key); + const AudioPlayerWidget(this.event, {this.color = Colors.black, super.key}); @override AudioPlayerState createState() => AudioPlayerState(); diff --git a/lib/pages/chat/events/cute_events.dart b/lib/pages/chat/events/cute_events.dart index 6b5b0f90..6a942481 100644 --- a/lib/pages/chat/events/cute_events.dart +++ b/lib/pages/chat/events/cute_events.dart @@ -10,7 +10,7 @@ import 'package:fluffychat/config/app_config.dart'; class CuteContent extends StatefulWidget { final Event event; - const CuteContent(this.event, {Key? key}) : super(key: key); + const CuteContent(this.event, {super.key}); @override State createState() => _CuteContentState(); @@ -98,10 +98,10 @@ class CuteEventOverlay extends StatefulWidget { final VoidCallback onAnimationEnd; const CuteEventOverlay({ - Key? key, + super.key, required this.emoji, required this.onAnimationEnd, - }) : super(key: key); + }); @override State createState() => _CuteEventOverlayState(); @@ -179,7 +179,7 @@ class _CuteOverlayContent extends StatelessWidget { static const double size = 64.0; final String emoji; - const _CuteOverlayContent({Key? key, required this.emoji}) : super(key: key); + const _CuteOverlayContent({required this.emoji}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/html_message.dart b/lib/pages/chat/events/html_message.dart index cd57545a..8d8993d5 100644 --- a/lib/pages/chat/events/html_message.dart +++ b/lib/pages/chat/events/html_message.dart @@ -20,11 +20,11 @@ class HtmlMessage extends StatelessWidget { final Color textColor; const HtmlMessage({ - Key? key, + super.key, required this.html, required this.room, this.textColor = Colors.black, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/image_bubble.dart b/lib/pages/chat/events/image_bubble.dart index 6974be5f..8de5f246 100644 --- a/lib/pages/chat/events/image_bubble.dart +++ b/lib/pages/chat/events/image_bubble.dart @@ -29,8 +29,8 @@ class ImageBubble extends StatelessWidget { this.height = 300, this.animated = false, this.onTap, - Key? key, - }) : super(key: key); + super.key, + }); Widget _buildPlaceholder(BuildContext context) { if (event.messageType == MessageTypes.Sticker) { diff --git a/lib/pages/chat/events/map_bubble.dart b/lib/pages/chat/events/map_bubble.dart index b003bc6e..c441c7d6 100644 --- a/lib/pages/chat/events/map_bubble.dart +++ b/lib/pages/chat/events/map_bubble.dart @@ -17,8 +17,8 @@ class MapBubble extends StatelessWidget { this.width = 400, this.height = 400, this.radius = 10.0, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/message.dart b/lib/pages/chat/events/message.dart index d25785a9..477af915 100644 --- a/lib/pages/chat/events/message.dart +++ b/lib/pages/chat/events/message.dart @@ -41,8 +41,8 @@ class Message extends StatelessWidget { required this.onSwipe, this.selected = false, required this.timeline, - Key? key, - }) : super(key: key); + super.key, + }); /// Indicates wheither the user may use a mouse instead /// of touchscreen. diff --git a/lib/pages/chat/events/message_content.dart b/lib/pages/chat/events/message_content.dart index 2be0ba82..2177d2de 100644 --- a/lib/pages/chat/events/message_content.dart +++ b/lib/pages/chat/events/message_content.dart @@ -30,9 +30,9 @@ class MessageContent extends StatelessWidget { const MessageContent( this.event, { this.onInfoTab, - Key? key, + super.key, required this.textColor, - }) : super(key: key); + }); void _verifyOrRequestKey(BuildContext context) async { final l10n = L10n.of(context)!; @@ -311,8 +311,7 @@ class _ButtonContent extends StatelessWidget { required this.textColor, required this.onPressed, required this.fontSize, - Key? key, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/message_download_content.dart b/lib/pages/chat/events/message_download_content.dart index 42dcdff9..767ea8e7 100644 --- a/lib/pages/chat/events/message_download_content.dart +++ b/lib/pages/chat/events/message_download_content.dart @@ -8,8 +8,7 @@ class MessageDownloadContent extends StatelessWidget { final Event event; final Color textColor; - const MessageDownloadContent(this.event, this.textColor, {Key? key}) - : super(key: key); + const MessageDownloadContent(this.event, this.textColor, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/message_reactions.dart b/lib/pages/chat/events/message_reactions.dart index 110553b9..58a61396 100644 --- a/lib/pages/chat/events/message_reactions.dart +++ b/lib/pages/chat/events/message_reactions.dart @@ -15,8 +15,7 @@ class MessageReactions extends StatelessWidget { final Event event; final Timeline timeline; - const MessageReactions(this.event, this.timeline, {Key? key}) - : super(key: key); + const MessageReactions(this.event, this.timeline, {super.key}); @override Widget build(BuildContext context) { @@ -50,36 +49,34 @@ class MessageReactions extends StatelessWidget { spacing: 4.0, runSpacing: 4.0, children: [ - ...reactionList - .map( - (r) => _Reaction( - reactionKey: r.key, - count: r.count, - reacted: r.reacted, - onTap: () { - if (r.reacted) { - final evt = allReactionEvents.firstWhereOrNull( - (e) => - e.senderId == e.room.client.userID && - e.content.tryGetMap('m.relates_to')?['key'] == r.key, - ); - if (evt != null) { - showFutureLoadingDialog( - context: context, - future: () => evt.redactEvent(), - ); - } - } else { - event.room.sendReaction(event.eventId, r.key!); - } - }, - onLongPress: () async => await _AdaptableReactorsDialog( - client: client, - reactionEntry: r, - ).show(context), - ), - ) - .toList(), + ...reactionList.map( + (r) => _Reaction( + reactionKey: r.key, + count: r.count, + reacted: r.reacted, + onTap: () { + if (r.reacted) { + final evt = allReactionEvents.firstWhereOrNull( + (e) => + e.senderId == e.room.client.userID && + e.content.tryGetMap('m.relates_to')?['key'] == r.key, + ); + if (evt != null) { + showFutureLoadingDialog( + context: context, + future: () => evt.redactEvent(), + ); + } + } else { + event.room.sendReaction(event.eventId, r.key!); + } + }, + onLongPress: () async => await _AdaptableReactorsDialog( + client: client, + reactionEntry: r, + ).show(context), + ), + ), if (allReactionEvents.any((e) => e.status.isSending)) const SizedBox( width: 28, @@ -190,10 +187,9 @@ class _AdaptableReactorsDialog extends StatelessWidget { final _ReactionEntry? reactionEntry; const _AdaptableReactorsDialog({ - Key? key, this.client, this.reactionEntry, - }) : super(key: key); + }); Future show(BuildContext context) => PlatformInfos.isCupertinoStyle ? showCupertinoDialog( diff --git a/lib/pages/chat/events/reply_content.dart b/lib/pages/chat/events/reply_content.dart index 69d244c0..4c70ae00 100644 --- a/lib/pages/chat/events/reply_content.dart +++ b/lib/pages/chat/events/reply_content.dart @@ -14,9 +14,9 @@ class ReplyContent extends StatelessWidget { const ReplyContent( this.replyEvent, { this.ownMessage = false, - Key? key, + super.key, this.timeline, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/state_message.dart b/lib/pages/chat/events/state_message.dart index d60aa814..b5e54eba 100644 --- a/lib/pages/chat/events/state_message.dart +++ b/lib/pages/chat/events/state_message.dart @@ -8,7 +8,7 @@ import '../../../config/app_config.dart'; class StateMessage extends StatelessWidget { final Event event; - const StateMessage(this.event, {Key? key}) : super(key: key); + const StateMessage(this.event, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/sticker.dart b/lib/pages/chat/events/sticker.dart index 041eae7a..8e52bfe3 100644 --- a/lib/pages/chat/events/sticker.dart +++ b/lib/pages/chat/events/sticker.dart @@ -10,7 +10,7 @@ import 'image_bubble.dart'; class Sticker extends StatefulWidget { final Event event; - const Sticker(this.event, {Key? key}) : super(key: key); + const Sticker(this.event, {super.key}); @override StickerState createState() => StickerState(); diff --git a/lib/pages/chat/events/verification_request_content.dart b/lib/pages/chat/events/verification_request_content.dart index a7271125..5a0c75f4 100644 --- a/lib/pages/chat/events/verification_request_content.dart +++ b/lib/pages/chat/events/verification_request_content.dart @@ -12,8 +12,8 @@ class VerificationRequestContent extends StatelessWidget { const VerificationRequestContent({ required this.event, required this.timeline, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/events/video_player.dart b/lib/pages/chat/events/video_player.dart index 3cfd1e70..9f204a59 100644 --- a/lib/pages/chat/events/video_player.dart +++ b/lib/pages/chat/events/video_player.dart @@ -18,7 +18,7 @@ import '../../../utils/error_reporter.dart'; class EventVideoPlayer extends StatefulWidget { final Event event; - const EventVideoPlayer(this.event, {Key? key}) : super(key: key); + const EventVideoPlayer(this.event, {super.key}); @override EventVideoPlayerState createState() => EventVideoPlayerState(); diff --git a/lib/pages/chat/input_bar.dart b/lib/pages/chat/input_bar.dart index cdff8e21..c179227a 100644 --- a/lib/pages/chat/input_bar.dart +++ b/lib/pages/chat/input_bar.dart @@ -44,8 +44,8 @@ class InputBar extends StatelessWidget { this.autofocus, this.textInputAction, this.readOnly = false, - Key? key, - }) : super(key: key); + super.key, + }); List> getSuggestions(String text) { if (controller!.selection.baseOffset != diff --git a/lib/pages/chat/pinned_events.dart b/lib/pages/chat/pinned_events.dart index ae81b46e..e7c90c6e 100644 --- a/lib/pages/chat/pinned_events.dart +++ b/lib/pages/chat/pinned_events.dart @@ -15,7 +15,7 @@ import 'package:fluffychat/utils/url_launcher.dart'; class PinnedEvents extends StatelessWidget { final ChatController controller; - const PinnedEvents(this.controller, {Key? key}) : super(key: key); + const PinnedEvents(this.controller, {super.key}); Future _displayPinnedEventsDialog( BuildContext context, diff --git a/lib/pages/chat/reactions_picker.dart b/lib/pages/chat/reactions_picker.dart index 4ae5505f..6434c997 100644 --- a/lib/pages/chat/reactions_picker.dart +++ b/lib/pages/chat/reactions_picker.dart @@ -11,7 +11,7 @@ import '../../config/themes.dart'; class ReactionsPicker extends StatelessWidget { final ChatController controller; - const ReactionsPicker(this.controller, {Key? key}) : super(key: key); + const ReactionsPicker(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/recording_dialog.dart b/lib/pages/chat/recording_dialog.dart index a4b66c88..0d18867a 100644 --- a/lib/pages/chat/recording_dialog.dart +++ b/lib/pages/chat/recording_dialog.dart @@ -15,8 +15,8 @@ import 'events/audio_player.dart'; class RecordingDialog extends StatefulWidget { static const String recordingFileType = 'm4a'; const RecordingDialog({ - Key? key, - }) : super(key: key); + super.key, + }); @override RecordingDialogState createState() => RecordingDialogState(); diff --git a/lib/pages/chat/reply_display.dart b/lib/pages/chat/reply_display.dart index 77edee1d..32bec7c2 100644 --- a/lib/pages/chat/reply_display.dart +++ b/lib/pages/chat/reply_display.dart @@ -10,7 +10,7 @@ import 'events/reply_content.dart'; class ReplyDisplay extends StatelessWidget { final ChatController controller; - const ReplyDisplay(this.controller, {Key? key}) : super(key: key); + const ReplyDisplay(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/seen_by_row.dart b/lib/pages/chat/seen_by_row.dart index 47bc4f9c..faac0db4 100644 --- a/lib/pages/chat/seen_by_row.dart +++ b/lib/pages/chat/seen_by_row.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class SeenByRow extends StatelessWidget { final ChatController controller; - const SeenByRow(this.controller, {Key? key}) : super(key: key); + const SeenByRow(this.controller, {super.key}); @override Widget build(BuildContext context) { @@ -38,14 +38,13 @@ class SeenByRow extends StatelessWidget { ? seenByUsers.sublist(0, maxAvatars) : seenByUsers) .map( - (user) => Avatar( - mxContent: user.avatarUrl, - name: user.calcDisplayname(), - size: 16, - fontSize: 9, - ), - ) - .toList(), + (user) => Avatar( + mxContent: user.avatarUrl, + name: user.calcDisplayname(), + size: 16, + fontSize: 9, + ), + ), if (seenByUsers.length > maxAvatars) SizedBox( width: 16, diff --git a/lib/pages/chat/send_file_dialog.dart b/lib/pages/chat/send_file_dialog.dart index 11b61db7..57ddf0a2 100644 --- a/lib/pages/chat/send_file_dialog.dart +++ b/lib/pages/chat/send_file_dialog.dart @@ -15,8 +15,8 @@ class SendFileDialog extends StatefulWidget { const SendFileDialog({ required this.room, required this.files, - Key? key, - }) : super(key: key); + super.key, + }); @override SendFileDialogState createState() => SendFileDialogState(); diff --git a/lib/pages/chat/send_location_dialog.dart b/lib/pages/chat/send_location_dialog.dart index d29626f5..182362b5 100644 --- a/lib/pages/chat/send_location_dialog.dart +++ b/lib/pages/chat/send_location_dialog.dart @@ -16,8 +16,8 @@ class SendLocationDialog extends StatefulWidget { const SendLocationDialog({ required this.room, - Key? key, - }) : super(key: key); + super.key, + }); @override SendLocationDialogState createState() => SendLocationDialogState(); diff --git a/lib/pages/chat/sticker_picker_dialog.dart b/lib/pages/chat/sticker_picker_dialog.dart index 80cae6b5..16065c91 100644 --- a/lib/pages/chat/sticker_picker_dialog.dart +++ b/lib/pages/chat/sticker_picker_dialog.dart @@ -9,7 +9,7 @@ import 'events/image_bubble.dart'; class StickerPickerDialog extends StatefulWidget { final Room room; - const StickerPickerDialog({required this.room, Key? key}) : super(key: key); + const StickerPickerDialog({required this.room, super.key}); @override StickerPickerDialogState createState() => StickerPickerDialogState(); diff --git a/lib/pages/chat/tombstone_display.dart b/lib/pages/chat/tombstone_display.dart index 50609cfd..e080a000 100644 --- a/lib/pages/chat/tombstone_display.dart +++ b/lib/pages/chat/tombstone_display.dart @@ -7,7 +7,7 @@ import 'chat.dart'; class TombstoneDisplay extends StatelessWidget { final ChatController controller; - const TombstoneDisplay(this.controller, {Key? key}) : super(key: key); + const TombstoneDisplay(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat/typing_indicators.dart b/lib/pages/chat/typing_indicators.dart index 3bb3f907..8101fd76 100644 --- a/lib/pages/chat/typing_indicators.dart +++ b/lib/pages/chat/typing_indicators.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class TypingIndicators extends StatelessWidget { final ChatController controller; - const TypingIndicators(this.controller, {Key? key}) : super(key: key); + const TypingIndicators(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat_details/chat_details.dart b/lib/pages/chat_details/chat_details.dart index b9da5c65..d15eb9d7 100644 --- a/lib/pages/chat_details/chat_details.dart +++ b/lib/pages/chat_details/chat_details.dart @@ -24,9 +24,9 @@ class ChatDetails extends StatefulWidget { final String roomId; const ChatDetails({ - Key? key, + super.key, required this.roomId, - }) : super(key: key); + }); @override ChatDetailsController createState() => ChatDetailsController(); @@ -109,8 +109,7 @@ class ChatDetailsController extends State { if (adminMode) AlertDialogAction(label: L10n.of(context)!.create, key: 'new'), ...aliases.result! - .map((alias) => AlertDialogAction(key: alias, label: alias)) - .toList(), + .map((alias) => AlertDialogAction(key: alias, label: alias)), ], ); if (select == null) return; diff --git a/lib/pages/chat_details/chat_details_view.dart b/lib/pages/chat_details/chat_details_view.dart index b7fd77bc..1dc92366 100644 --- a/lib/pages/chat_details/chat_details_view.dart +++ b/lib/pages/chat_details/chat_details_view.dart @@ -19,7 +19,7 @@ import '../../utils/url_launcher.dart'; class ChatDetailsView extends StatelessWidget { final ChatDetailsController controller; - const ChatDetailsView(this.controller, {Key? key}) : super(key: key); + const ChatDetailsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat_details/participant_list_item.dart b/lib/pages/chat_details/participant_list_item.dart index 11848cb6..f6986d15 100644 --- a/lib/pages/chat_details/participant_list_item.dart +++ b/lib/pages/chat_details/participant_list_item.dart @@ -10,7 +10,7 @@ import '../user_bottom_sheet/user_bottom_sheet.dart'; class ParticipantListItem extends StatelessWidget { final User user; - const ParticipantListItem(this.user, {Key? key}) : super(key: key); + const ParticipantListItem(this.user, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat_encryption_settings/chat_encryption_settings.dart b/lib/pages/chat_encryption_settings/chat_encryption_settings.dart index b8df84c8..c7aed03a 100644 --- a/lib/pages/chat_encryption_settings/chat_encryption_settings.dart +++ b/lib/pages/chat_encryption_settings/chat_encryption_settings.dart @@ -12,7 +12,7 @@ import 'package:fluffychat/widgets/matrix.dart'; import '../key_verification/key_verification_dialog.dart'; class ChatEncryptionSettings extends StatefulWidget { - const ChatEncryptionSettings({Key? key}) : super(key: key); + const ChatEncryptionSettings({super.key}); @override ChatEncryptionSettingsController createState() => diff --git a/lib/pages/chat_encryption_settings/chat_encryption_settings_view.dart b/lib/pages/chat_encryption_settings/chat_encryption_settings_view.dart index fc78f30a..f7a19f96 100644 --- a/lib/pages/chat_encryption_settings/chat_encryption_settings_view.dart +++ b/lib/pages/chat_encryption_settings/chat_encryption_settings_view.dart @@ -14,8 +14,7 @@ import 'package:fluffychat/widgets/layouts/max_width_body.dart'; class ChatEncryptionSettingsView extends StatelessWidget { final ChatEncryptionSettingsController controller; - const ChatEncryptionSettingsView(this.controller, {Key? key}) - : super(key: key); + const ChatEncryptionSettingsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat_list/chat_list.dart b/lib/pages/chat_list/chat_list.dart index 79542fd8..9b202c49 100644 --- a/lib/pages/chat_list/chat_list.dart +++ b/lib/pages/chat_list/chat_list.dart @@ -61,10 +61,10 @@ class ChatList extends StatefulWidget { final String? activeChat; const ChatList({ - Key? key, + super.key, this.displayNavigationRail = false, required this.activeChat, - }) : super(key: key); + }); @override ChatListController createState() => ChatListController(); diff --git a/lib/pages/chat_list/chat_list_body.dart b/lib/pages/chat_list/chat_list_body.dart index 69b438e8..520adaaa 100644 --- a/lib/pages/chat_list/chat_list_body.dart +++ b/lib/pages/chat_list/chat_list_body.dart @@ -25,7 +25,7 @@ import 'chat_list_header.dart'; class ChatListViewBody extends StatelessWidget { final ChatListController controller; - const ChatListViewBody(this.controller, {Key? key}) : super(key: key); + const ChatListViewBody(this.controller, {super.key}); @override Widget build(BuildContext context) { @@ -313,8 +313,7 @@ class _SearchItem extends StatelessWidget { required this.title, this.avatar, required this.onPressed, - Key? key, - }) : super(key: key); + }); @override Widget build(BuildContext context) => InkWell( diff --git a/lib/pages/chat_list/chat_list_header.dart b/lib/pages/chat_list/chat_list_header.dart index f9675a8d..1329c8a8 100644 --- a/lib/pages/chat_list/chat_list_header.dart +++ b/lib/pages/chat_list/chat_list_header.dart @@ -10,7 +10,7 @@ import '../../widgets/matrix.dart'; class ChatListHeader extends StatelessWidget implements PreferredSizeWidget { final ChatListController controller; - const ChatListHeader({Key? key, required this.controller}) : super(key: key); + const ChatListHeader({super.key, required this.controller}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat_list/chat_list_item.dart b/lib/pages/chat_list/chat_list_item.dart index 41a4aec3..2d6a9749 100644 --- a/lib/pages/chat_list/chat_list_item.dart +++ b/lib/pages/chat_list/chat_list_item.dart @@ -30,8 +30,8 @@ class ChatListItem extends StatelessWidget { this.selected = false, this.onTap, this.onLongPress, - Key? key, - }) : super(key: key); + super.key, + }); void clickAction(BuildContext context) async { if (onTap != null) return onTap!(); diff --git a/lib/pages/chat_list/chat_list_view.dart b/lib/pages/chat_list/chat_list_view.dart index b6037174..e8b5e958 100644 --- a/lib/pages/chat_list/chat_list_view.dart +++ b/lib/pages/chat_list/chat_list_view.dart @@ -20,7 +20,7 @@ import 'start_chat_fab.dart'; class ChatListView extends StatelessWidget { final ChatListController controller; - const ChatListView(this.controller, {Key? key}) : super(key: key); + const ChatListView(this.controller, {super.key}); List getNavigationDestinations(BuildContext context) { final badgePosition = BadgePosition.topEnd(top: -12, end: -8); diff --git a/lib/pages/chat_list/client_chooser_button.dart b/lib/pages/chat_list/client_chooser_button.dart index 2791a4a0..f2394bb6 100644 --- a/lib/pages/chat_list/client_chooser_button.dart +++ b/lib/pages/chat_list/client_chooser_button.dart @@ -15,7 +15,7 @@ import 'chat_list.dart'; class ClientChooserButton extends StatelessWidget { final ChatListController controller; - const ClientChooserButton(this.controller, {Key? key}) : super(key: key); + const ClientChooserButton(this.controller, {super.key}); List> _bundleMenuItems(BuildContext context) { final matrix = Matrix.of(context); @@ -112,48 +112,45 @@ class ClientChooserButton extends StatelessWidget { ], ), ), - ...matrix.accountBundles[bundle]! - .map( - (client) => PopupMenuItem( - value: client, - child: FutureBuilder( - // analyzer does not understand this type cast for error - // handling - // - // ignore: unnecessary_cast - future: (client!.fetchOwnProfile() as Future) - .onError((e, s) => null), - builder: (context, snapshot) => Row( - children: [ - Avatar( - mxContent: snapshot.data?.avatarUrl, - name: snapshot.data?.displayName ?? - client.userID!.localpart, - size: 32, - fontSize: 12, - ), - const SizedBox(width: 12), - Expanded( - child: Text( - snapshot.data?.displayName ?? - client.userID!.localpart!, - overflow: TextOverflow.ellipsis, - ), - ), - const SizedBox(width: 12), - IconButton( - icon: const Icon(Icons.edit_outlined), - onPressed: () => controller.editBundlesForAccount( - client.userID, - bundle, - ), - ), - ], + ...matrix.accountBundles[bundle]!.map( + (client) => PopupMenuItem( + value: client, + child: FutureBuilder( + // analyzer does not understand this type cast for error + // handling + // + // ignore: unnecessary_cast + future: (client!.fetchOwnProfile() as Future) + .onError((e, s) => null), + builder: (context, snapshot) => Row( + children: [ + Avatar( + mxContent: snapshot.data?.avatarUrl, + name: + snapshot.data?.displayName ?? client.userID!.localpart, + size: 32, + fontSize: 12, ), - ), + const SizedBox(width: 12), + Expanded( + child: Text( + snapshot.data?.displayName ?? client.userID!.localpart!, + overflow: TextOverflow.ellipsis, + ), + ), + const SizedBox(width: 12), + IconButton( + icon: const Icon(Icons.edit_outlined), + onPressed: () => controller.editBundlesForAccount( + client.userID, + bundle, + ), + ), + ], ), - ) - .toList(), + ), + ), + ), ], PopupMenuItem( value: SettingsAction.addAccount, diff --git a/lib/pages/chat_list/navi_rail_item.dart b/lib/pages/chat_list/navi_rail_item.dart index 7eef5546..2004f356 100644 --- a/lib/pages/chat_list/navi_rail_item.dart +++ b/lib/pages/chat_list/navi_rail_item.dart @@ -16,8 +16,8 @@ class NaviRailItem extends StatefulWidget { required this.onTap, required this.icon, this.selectedIcon, - Key? key, - }) : super(key: key); + super.key, + }); @override State createState() => _NaviRailItemState(); diff --git a/lib/pages/chat_list/search_title.dart b/lib/pages/chat_list/search_title.dart index 3ed0e64d..62bcfb68 100644 --- a/lib/pages/chat_list/search_title.dart +++ b/lib/pages/chat_list/search_title.dart @@ -13,8 +13,8 @@ class SearchTitle extends StatelessWidget { this.trailing, this.onTap, this.color, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) => Material( diff --git a/lib/pages/chat_list/space_view.dart b/lib/pages/chat_list/space_view.dart index 8bbb6369..2dc7604e 100644 --- a/lib/pages/chat_list/space_view.dart +++ b/lib/pages/chat_list/space_view.dart @@ -21,9 +21,9 @@ class SpaceView extends StatefulWidget { final ScrollController scrollController; const SpaceView( this.controller, { - Key? key, + super.key, required this.scrollController, - }) : super(key: key); + }); @override State createState() => _SpaceViewState(); diff --git a/lib/pages/chat_list/start_chat_fab.dart b/lib/pages/chat_list/start_chat_fab.dart index f702ad69..19216147 100644 --- a/lib/pages/chat_list/start_chat_fab.dart +++ b/lib/pages/chat_list/start_chat_fab.dart @@ -12,11 +12,11 @@ class StartChatFloatingActionButton extends StatelessWidget { final bool roomsIsEmpty; const StartChatFloatingActionButton({ - Key? key, + super.key, required this.activeFilter, required this.scrolledToTop, required this.roomsIsEmpty, - }) : super(key: key); + }); void _onPressed(BuildContext context) { switch (activeFilter) { diff --git a/lib/pages/chat_list/stories_header.dart b/lib/pages/chat_list/stories_header.dart index ab6caabb..d5325b91 100644 --- a/lib/pages/chat_list/stories_header.dart +++ b/lib/pages/chat_list/stories_header.dart @@ -23,7 +23,7 @@ enum ContextualRoomAction { class StoriesHeader extends StatelessWidget { final String filter; - const StoriesHeader({required this.filter, Key? key}) : super(key: key); + const StoriesHeader({required this.filter, super.key}); void _addToStoryAction(BuildContext context) => context.go('/rooms/stories/create'); @@ -186,8 +186,7 @@ class _StoryButton extends StatefulWidget { this.hasPosts = true, this.unread = false, this.onLongPressed, - Key? key, - }) : super(key: key); + }); @override State<_StoryButton> createState() => _StoryButtonState(); diff --git a/lib/pages/chat_permissions_settings/chat_permissions_settings.dart b/lib/pages/chat_permissions_settings/chat_permissions_settings.dart index 45983574..a6cdcbef 100644 --- a/lib/pages/chat_permissions_settings/chat_permissions_settings.dart +++ b/lib/pages/chat_permissions_settings/chat_permissions_settings.dart @@ -13,7 +13,7 @@ import 'package:fluffychat/widgets/matrix.dart'; import 'package:fluffychat/widgets/permission_slider_dialog.dart'; class ChatPermissionsSettings extends StatefulWidget { - const ChatPermissionsSettings({Key? key}) : super(key: key); + const ChatPermissionsSettings({super.key}); @override ChatPermissionsSettingsController createState() => diff --git a/lib/pages/chat_permissions_settings/chat_permissions_settings_view.dart b/lib/pages/chat_permissions_settings/chat_permissions_settings_view.dart index fd10b9af..072e2040 100644 --- a/lib/pages/chat_permissions_settings/chat_permissions_settings_view.dart +++ b/lib/pages/chat_permissions_settings/chat_permissions_settings_view.dart @@ -11,8 +11,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class ChatPermissionsSettingsView extends StatelessWidget { final ChatPermissionsSettingsController controller; - const ChatPermissionsSettingsView(this.controller, {Key? key}) - : super(key: key); + const ChatPermissionsSettingsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/chat_permissions_settings/permission_list_tile.dart b/lib/pages/chat_permissions_settings/permission_list_tile.dart index 0ac68f44..a9d15985 100644 --- a/lib/pages/chat_permissions_settings/permission_list_tile.dart +++ b/lib/pages/chat_permissions_settings/permission_list_tile.dart @@ -10,12 +10,12 @@ class PermissionsListTile extends StatelessWidget { final void Function()? onTap; const PermissionsListTile({ - Key? key, + super.key, required this.permissionKey, required this.permission, this.category, this.onTap, - }) : super(key: key); + }); String getLocalizedPowerLevelString(BuildContext context) { if (category == null) { diff --git a/lib/pages/device_settings/device_settings.dart b/lib/pages/device_settings/device_settings.dart index 25011c5f..fba065bc 100644 --- a/lib/pages/device_settings/device_settings.dart +++ b/lib/pages/device_settings/device_settings.dart @@ -13,7 +13,7 @@ import 'package:fluffychat/utils/localized_exception_extension.dart'; import '../../widgets/matrix.dart'; class DevicesSettings extends StatefulWidget { - const DevicesSettings({Key? key}) : super(key: key); + const DevicesSettings({super.key}); @override DevicesSettingsController createState() => DevicesSettingsController(); diff --git a/lib/pages/device_settings/device_settings_view.dart b/lib/pages/device_settings/device_settings_view.dart index b03f0dc7..4094c022 100644 --- a/lib/pages/device_settings/device_settings_view.dart +++ b/lib/pages/device_settings/device_settings_view.dart @@ -9,7 +9,7 @@ import 'user_device_list_item.dart'; class DevicesSettingsView extends StatelessWidget { final DevicesSettingsController controller; - const DevicesSettingsView(this.controller, {Key? key}) : super(key: key); + const DevicesSettingsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/device_settings/user_device_list_item.dart b/lib/pages/device_settings/user_device_list_item.dart index 887b3b44..db793ac3 100644 --- a/lib/pages/device_settings/user_device_list_item.dart +++ b/lib/pages/device_settings/user_device_list_item.dart @@ -31,8 +31,8 @@ class UserDeviceListItem extends StatelessWidget { required this.verify, required this.block, required this.unblock, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/dialer/dialer.dart b/lib/pages/dialer/dialer.dart index 1af65ce9..a8e5a920 100644 --- a/lib/pages/dialer/dialer.dart +++ b/lib/pages/dialer/dialer.dart @@ -38,10 +38,9 @@ import 'pip/pip_view.dart'; class _StreamView extends StatelessWidget { const _StreamView( this.wrappedStream, { - Key? key, this.mainView = false, required this.matrixClient, - }) : super(key: key); + }); final WrappedMediaStream wrappedStream; final Client matrixClient; @@ -128,8 +127,8 @@ class Calling extends StatefulWidget { required this.client, required this.callId, this.onClear, - Key? key, - }) : super(key: key); + super.key, + }); @override MyCallingPage createState() => MyCallingPage(); diff --git a/lib/pages/dialer/pip/pip_view.dart b/lib/pages/dialer/pip/pip_view.dart index 74008aaf..5396c913 100644 --- a/lib/pages/dialer/pip/pip_view.dart +++ b/lib/pages/dialer/pip/pip_view.dart @@ -15,13 +15,13 @@ class PIPView extends StatefulWidget { ) builder; const PIPView({ - Key? key, + super.key, required this.builder, this.initialCorner = PIPViewCorner.topRight, this.floatingWidth, this.floatingHeight, this.avoidKeyboard = true, - }) : super(key: key); + }); @override PIPViewState createState() => PIPViewState(); diff --git a/lib/pages/homeserver_picker/homeserver_app_bar.dart b/lib/pages/homeserver_picker/homeserver_app_bar.dart index d1fd7149..e29aeb7e 100644 --- a/lib/pages/homeserver_picker/homeserver_app_bar.dart +++ b/lib/pages/homeserver_picker/homeserver_app_bar.dart @@ -11,8 +11,7 @@ import 'homeserver_picker.dart'; class HomeserverAppBar extends StatelessWidget { final HomeserverPickerController controller; - const HomeserverAppBar({Key? key, required this.controller}) - : super(key: key); + const HomeserverAppBar({super.key, required this.controller}); @override Widget build(BuildContext context) { diff --git a/lib/pages/homeserver_picker/homeserver_bottom_sheet.dart b/lib/pages/homeserver_picker/homeserver_bottom_sheet.dart index d7cd534b..0fc6d011 100644 --- a/lib/pages/homeserver_picker/homeserver_bottom_sheet.dart +++ b/lib/pages/homeserver_picker/homeserver_bottom_sheet.dart @@ -5,8 +5,7 @@ import 'package:url_launcher/url_launcher_string.dart'; class HomeserverBottomSheet extends StatelessWidget { final HomeserverBenchmarkResult homeserver; - const HomeserverBottomSheet({required this.homeserver, Key? key}) - : super(key: key); + const HomeserverBottomSheet({required this.homeserver, super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/homeserver_picker/homeserver_picker.dart b/lib/pages/homeserver_picker/homeserver_picker.dart index a5df23a5..e29cabcc 100644 --- a/lib/pages/homeserver_picker/homeserver_picker.dart +++ b/lib/pages/homeserver_picker/homeserver_picker.dart @@ -25,7 +25,7 @@ import 'package:fluffychat/utils/tor_stub.dart' if (dart.library.html) 'package:tor_detector_web/tor_detector_web.dart'; class HomeserverPicker extends StatefulWidget { - const HomeserverPicker({Key? key}) : super(key: key); + const HomeserverPicker({super.key}); @override HomeserverPickerController createState() => HomeserverPickerController(); diff --git a/lib/pages/homeserver_picker/homeserver_picker_view.dart b/lib/pages/homeserver_picker/homeserver_picker_view.dart index 3cd9d713..6d25e9ea 100644 --- a/lib/pages/homeserver_picker/homeserver_picker_view.dart +++ b/lib/pages/homeserver_picker/homeserver_picker_view.dart @@ -13,7 +13,7 @@ import 'homeserver_picker.dart'; class HomeserverPickerView extends StatelessWidget { final HomeserverPickerController controller; - const HomeserverPickerView(this.controller, {Key? key}) : super(key: key); + const HomeserverPickerView(this.controller, {super.key}); @override Widget build(BuildContext context) { @@ -172,8 +172,7 @@ class _LoginButton extends StatelessWidget { required this.icon, required this.label, required this.onPressed, - Key? key, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/image_viewer/image_viewer.dart b/lib/pages/image_viewer/image_viewer.dart index ac4505c4..94ab19dd 100644 --- a/lib/pages/image_viewer/image_viewer.dart +++ b/lib/pages/image_viewer/image_viewer.dart @@ -11,7 +11,7 @@ import '../../utils/matrix_sdk_extensions/event_extension.dart'; class ImageViewer extends StatefulWidget { final Event event; - const ImageViewer(this.event, {Key? key}) : super(key: key); + const ImageViewer(this.event, {super.key}); @override ImageViewerController createState() => ImageViewerController(); diff --git a/lib/pages/image_viewer/image_viewer_view.dart b/lib/pages/image_viewer/image_viewer_view.dart index 3bd6166c..7646c8a6 100644 --- a/lib/pages/image_viewer/image_viewer_view.dart +++ b/lib/pages/image_viewer/image_viewer_view.dart @@ -9,7 +9,7 @@ import 'image_viewer.dart'; class ImageViewerView extends StatelessWidget { final ImageViewerController controller; - const ImageViewerView(this.controller, {Key? key}) : super(key: key); + const ImageViewerView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/invitation_selection/invitation_selection.dart b/lib/pages/invitation_selection/invitation_selection.dart index 74d30163..15078735 100644 --- a/lib/pages/invitation_selection/invitation_selection.dart +++ b/lib/pages/invitation_selection/invitation_selection.dart @@ -15,9 +15,9 @@ import '../../utils/localized_exception_extension.dart'; class InvitationSelection extends StatefulWidget { final String roomId; const InvitationSelection({ - Key? key, + super.key, required this.roomId, - }) : super(key: key); + }); @override InvitationSelectionController createState() => diff --git a/lib/pages/invitation_selection/invitation_selection_view.dart b/lib/pages/invitation_selection/invitation_selection_view.dart index 202e4b37..8a5a55dd 100644 --- a/lib/pages/invitation_selection/invitation_selection_view.dart +++ b/lib/pages/invitation_selection/invitation_selection_view.dart @@ -11,7 +11,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class InvitationSelectionView extends StatelessWidget { final InvitationSelectionController controller; - const InvitationSelectionView(this.controller, {Key? key}) : super(key: key); + const InvitationSelectionView(this.controller, {super.key}); @override Widget build(BuildContext context) { @@ -142,13 +142,12 @@ class _InviteContactListTile extends StatelessWidget { final void Function() onTap; const _InviteContactListTile({ - Key? key, required this.userId, required this.displayname, required this.avatarUrl, required this.isMember, required this.onTap, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/pages/key_verification/key_verification_dialog.dart b/lib/pages/key_verification/key_verification_dialog.dart index bfed12be..6c303b85 100644 --- a/lib/pages/key_verification/key_verification_dialog.dart +++ b/lib/pages/key_verification/key_verification_dialog.dart @@ -23,9 +23,9 @@ class KeyVerificationDialog extends StatefulWidget { final KeyVerification request; const KeyVerificationDialog({ - Key? key, + super.key, required this.request, - }) : super(key: key); + }); @override KeyVerificationPageState createState() => KeyVerificationPageState(); diff --git a/lib/pages/login/login.dart b/lib/pages/login/login.dart index d4d5d1f2..49f666d1 100644 --- a/lib/pages/login/login.dart +++ b/lib/pages/login/login.dart @@ -13,7 +13,7 @@ import '../../utils/platform_infos.dart'; import 'login_view.dart'; class Login extends StatefulWidget { - const Login({Key? key}) : super(key: key); + const Login({super.key}); @override LoginController createState() => LoginController(); diff --git a/lib/pages/login/login_view.dart b/lib/pages/login/login_view.dart index 50fa1e38..503ab6ac 100644 --- a/lib/pages/login/login_view.dart +++ b/lib/pages/login/login_view.dart @@ -9,7 +9,7 @@ import 'login.dart'; class LoginView extends StatelessWidget { final LoginController controller; - const LoginView(this.controller, {Key? key}) : super(key: key); + const LoginView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/new_group/new_group.dart b/lib/pages/new_group/new_group.dart index 70ea22ef..d00a71e8 100644 --- a/lib/pages/new_group/new_group.dart +++ b/lib/pages/new_group/new_group.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/pages/new_group/new_group_view.dart'; import 'package:fluffychat/widgets/matrix.dart'; class NewGroup extends StatefulWidget { - const NewGroup({Key? key}) : super(key: key); + const NewGroup({super.key}); @override NewGroupController createState() => NewGroupController(); diff --git a/lib/pages/new_group/new_group_view.dart b/lib/pages/new_group/new_group_view.dart index 7b8dd7b1..ee947e6f 100644 --- a/lib/pages/new_group/new_group_view.dart +++ b/lib/pages/new_group/new_group_view.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/widgets/layouts/max_width_body.dart'; class NewGroupView extends StatelessWidget { final NewGroupController controller; - const NewGroupView(this.controller, {Key? key}) : super(key: key); + const NewGroupView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/new_private_chat/new_private_chat.dart b/lib/pages/new_private_chat/new_private_chat.dart index 179d4aab..f392dca9 100644 --- a/lib/pages/new_private_chat/new_private_chat.dart +++ b/lib/pages/new_private_chat/new_private_chat.dart @@ -14,7 +14,7 @@ import 'package:fluffychat/utils/url_launcher.dart'; import 'package:fluffychat/widgets/matrix.dart'; class NewPrivateChat extends StatefulWidget { - const NewPrivateChat({Key? key}) : super(key: key); + const NewPrivateChat({super.key}); @override NewPrivateChatController createState() => NewPrivateChatController(); diff --git a/lib/pages/new_private_chat/new_private_chat_view.dart b/lib/pages/new_private_chat/new_private_chat_view.dart index 4672633b..f6aecbde 100644 --- a/lib/pages/new_private_chat/new_private_chat_view.dart +++ b/lib/pages/new_private_chat/new_private_chat_view.dart @@ -14,7 +14,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class NewPrivateChatView extends StatelessWidget { final NewPrivateChatController controller; - const NewPrivateChatView(this.controller, {Key? key}) : super(key: key); + const NewPrivateChatView(this.controller, {super.key}); static const double _qrCodePadding = 8; diff --git a/lib/pages/new_private_chat/qr_scanner_modal.dart b/lib/pages/new_private_chat/qr_scanner_modal.dart index 8c125e46..6155ebb2 100644 --- a/lib/pages/new_private_chat/qr_scanner_modal.dart +++ b/lib/pages/new_private_chat/qr_scanner_modal.dart @@ -9,7 +9,7 @@ import 'package:qr_code_scanner/qr_code_scanner.dart'; import 'package:fluffychat/utils/url_launcher.dart'; class QrScannerModal extends StatefulWidget { - const QrScannerModal({Key? key}) : super(key: key); + const QrScannerModal({super.key}); @override QrScannerModalState createState() => QrScannerModalState(); diff --git a/lib/pages/new_space/new_space.dart b/lib/pages/new_space/new_space.dart index 9d4a8272..bd523941 100644 --- a/lib/pages/new_space/new_space.dart +++ b/lib/pages/new_space/new_space.dart @@ -9,7 +9,7 @@ import 'package:fluffychat/pages/new_space/new_space_view.dart'; import 'package:fluffychat/widgets/matrix.dart'; class NewSpace extends StatefulWidget { - const NewSpace({Key? key}) : super(key: key); + const NewSpace({super.key}); @override NewSpaceController createState() => NewSpaceController(); diff --git a/lib/pages/new_space/new_space_view.dart b/lib/pages/new_space/new_space_view.dart index ce4f967c..02c2571e 100644 --- a/lib/pages/new_space/new_space_view.dart +++ b/lib/pages/new_space/new_space_view.dart @@ -8,7 +8,7 @@ import 'new_space.dart'; class NewSpaceView extends StatelessWidget { final NewSpaceController controller; - const NewSpaceView(this.controller, {Key? key}) : super(key: key); + const NewSpaceView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings/settings.dart b/lib/pages/settings/settings.dart index b4b9c2f1..97bbec66 100644 --- a/lib/pages/settings/settings.dart +++ b/lib/pages/settings/settings.dart @@ -17,7 +17,7 @@ import '../bootstrap/bootstrap_dialog.dart'; import 'settings_view.dart'; class Settings extends StatefulWidget { - const Settings({Key? key}) : super(key: key); + const Settings({super.key}); @override SettingsController createState() => SettingsController(); diff --git a/lib/pages/settings/settings_view.dart b/lib/pages/settings/settings_view.dart index c7277e02..05af6fda 100644 --- a/lib/pages/settings/settings_view.dart +++ b/lib/pages/settings/settings_view.dart @@ -15,7 +15,7 @@ import 'settings.dart'; class SettingsView extends StatelessWidget { final SettingsController controller; - const SettingsView(this.controller, {Key? key}) : super(key: key); + const SettingsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_3pid/settings_3pid.dart b/lib/pages/settings_3pid/settings_3pid.dart index ff325693..d46cac2a 100644 --- a/lib/pages/settings_3pid/settings_3pid.dart +++ b/lib/pages/settings_3pid/settings_3pid.dart @@ -11,7 +11,7 @@ import 'settings_3pid_view.dart'; class Settings3Pid extends StatefulWidget { static int sendAttempt = 0; - const Settings3Pid({Key? key}) : super(key: key); + const Settings3Pid({super.key}); @override Settings3PidController createState() => Settings3PidController(); diff --git a/lib/pages/settings_3pid/settings_3pid_view.dart b/lib/pages/settings_3pid/settings_3pid_view.dart index 245077d9..1d1fed36 100644 --- a/lib/pages/settings_3pid/settings_3pid_view.dart +++ b/lib/pages/settings_3pid/settings_3pid_view.dart @@ -10,7 +10,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class Settings3PidView extends StatelessWidget { final Settings3PidController controller; - const Settings3PidView(this.controller, {Key? key}) : super(key: key); + const Settings3PidView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_chat/settings_chat.dart b/lib/pages/settings_chat/settings_chat.dart index b2594166..1c103555 100644 --- a/lib/pages/settings_chat/settings_chat.dart +++ b/lib/pages/settings_chat/settings_chat.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; import 'settings_chat_view.dart'; class SettingsChat extends StatefulWidget { - const SettingsChat({Key? key}) : super(key: key); + const SettingsChat({super.key}); @override SettingsChatController createState() => SettingsChatController(); diff --git a/lib/pages/settings_chat/settings_chat_view.dart b/lib/pages/settings_chat/settings_chat_view.dart index 76522bff..1d0f6686 100644 --- a/lib/pages/settings_chat/settings_chat_view.dart +++ b/lib/pages/settings_chat/settings_chat_view.dart @@ -14,7 +14,7 @@ import 'settings_chat.dart'; class SettingsChatView extends StatelessWidget { final SettingsChatController controller; - const SettingsChatView(this.controller, {Key? key}) : super(key: key); + const SettingsChatView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_emotes/import_archive_dialog.dart b/lib/pages/settings_emotes/import_archive_dialog.dart index faf06912..fd25fc9c 100644 --- a/lib/pages/settings_emotes/import_archive_dialog.dart +++ b/lib/pages/settings_emotes/import_archive_dialog.dart @@ -204,11 +204,11 @@ class _EmojiImportPreview extends StatefulWidget { final VoidCallback onRemove; const _EmojiImportPreview({ - Key? key, + super.key, required this.entry, required this.onNameChanged, required this.onRemove, - }) : super(key: key); + }); @override State<_EmojiImportPreview> createState() => _EmojiImportPreviewState(); diff --git a/lib/pages/settings_emotes/settings_emotes.dart b/lib/pages/settings_emotes/settings_emotes.dart index 98d5a214..92f2d7ea 100644 --- a/lib/pages/settings_emotes/settings_emotes.dart +++ b/lib/pages/settings_emotes/settings_emotes.dart @@ -23,7 +23,7 @@ import 'package:archive/archive.dart' if (dart.library.io) 'package:archive/archive_io.dart'; class EmotesSettings extends StatefulWidget { - const EmotesSettings({Key? key}) : super(key: key); + const EmotesSettings({super.key}); @override EmotesSettingsController createState() => EmotesSettingsController(); diff --git a/lib/pages/settings_emotes/settings_emotes_view.dart b/lib/pages/settings_emotes/settings_emotes_view.dart index 5803ee94..acb93788 100644 --- a/lib/pages/settings_emotes/settings_emotes_view.dart +++ b/lib/pages/settings_emotes/settings_emotes_view.dart @@ -15,7 +15,7 @@ enum PopupMenuEmojiActions { import, export } class EmotesSettingsView extends StatelessWidget { final EmotesSettingsController controller; - const EmotesSettingsView(this.controller, {Key? key}) : super(key: key); + const EmotesSettingsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_ignore_list/settings_ignore_list.dart b/lib/pages/settings_ignore_list/settings_ignore_list.dart index cf0713aa..0b27cee3 100644 --- a/lib/pages/settings_ignore_list/settings_ignore_list.dart +++ b/lib/pages/settings_ignore_list/settings_ignore_list.dart @@ -8,7 +8,7 @@ import 'settings_ignore_list_view.dart'; class SettingsIgnoreList extends StatefulWidget { final String? initialUserId; - const SettingsIgnoreList({Key? key, this.initialUserId}) : super(key: key); + const SettingsIgnoreList({super.key, this.initialUserId}); @override SettingsIgnoreListController createState() => SettingsIgnoreListController(); diff --git a/lib/pages/settings_ignore_list/settings_ignore_list_view.dart b/lib/pages/settings_ignore_list/settings_ignore_list_view.dart index 438e530b..8c7be9c4 100644 --- a/lib/pages/settings_ignore_list/settings_ignore_list_view.dart +++ b/lib/pages/settings_ignore_list/settings_ignore_list_view.dart @@ -12,7 +12,7 @@ import 'settings_ignore_list.dart'; class SettingsIgnoreListView extends StatelessWidget { final SettingsIgnoreListController controller; - const SettingsIgnoreListView(this.controller, {Key? key}) : super(key: key); + const SettingsIgnoreListView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_multiple_emotes/settings_multiple_emotes.dart b/lib/pages/settings_multiple_emotes/settings_multiple_emotes.dart index b4901832..276bc08a 100644 --- a/lib/pages/settings_multiple_emotes/settings_multiple_emotes.dart +++ b/lib/pages/settings_multiple_emotes/settings_multiple_emotes.dart @@ -5,7 +5,7 @@ import 'package:go_router/go_router.dart'; import 'settings_multiple_emotes_view.dart'; class MultipleEmotesSettings extends StatefulWidget { - const MultipleEmotesSettings({Key? key}) : super(key: key); + const MultipleEmotesSettings({super.key}); @override MultipleEmotesSettingsController createState() => diff --git a/lib/pages/settings_multiple_emotes/settings_multiple_emotes_view.dart b/lib/pages/settings_multiple_emotes/settings_multiple_emotes_view.dart index b699e37b..8d62549c 100644 --- a/lib/pages/settings_multiple_emotes/settings_multiple_emotes_view.dart +++ b/lib/pages/settings_multiple_emotes/settings_multiple_emotes_view.dart @@ -10,8 +10,7 @@ import 'package:fluffychat/widgets/matrix.dart'; class MultipleEmotesSettingsView extends StatelessWidget { final MultipleEmotesSettingsController controller; - const MultipleEmotesSettingsView(this.controller, {Key? key}) - : super(key: key); + const MultipleEmotesSettingsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_notifications/settings_notifications.dart b/lib/pages/settings_notifications/settings_notifications.dart index ff9dcbd3..6ab4740a 100644 --- a/lib/pages/settings_notifications/settings_notifications.dart +++ b/lib/pages/settings_notifications/settings_notifications.dart @@ -54,7 +54,7 @@ class NotificationSettingsItem { } class SettingsNotifications extends StatefulWidget { - const SettingsNotifications({Key? key}) : super(key: key); + const SettingsNotifications({super.key}); @override SettingsNotificationsController createState() => diff --git a/lib/pages/settings_notifications/settings_notifications_view.dart b/lib/pages/settings_notifications/settings_notifications_view.dart index 0cdef98d..65ddac16 100644 --- a/lib/pages/settings_notifications/settings_notifications_view.dart +++ b/lib/pages/settings_notifications/settings_notifications_view.dart @@ -12,8 +12,7 @@ import 'settings_notifications.dart'; class SettingsNotificationsView extends StatelessWidget { final SettingsNotificationsController controller; - const SettingsNotificationsView(this.controller, {Key? key}) - : super(key: key); + const SettingsNotificationsView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_security/settings_security.dart b/lib/pages/settings_security/settings_security.dart index b3a58ca6..60f746e8 100644 --- a/lib/pages/settings_security/settings_security.dart +++ b/lib/pages/settings_security/settings_security.dart @@ -16,7 +16,7 @@ import '../bootstrap/bootstrap_dialog.dart'; import 'settings_security_view.dart'; class SettingsSecurity extends StatefulWidget { - const SettingsSecurity({Key? key}) : super(key: key); + const SettingsSecurity({super.key}); @override SettingsSecurityController createState() => SettingsSecurityController(); diff --git a/lib/pages/settings_security/settings_security_view.dart b/lib/pages/settings_security/settings_security_view.dart index fc241a85..6f73d4de 100644 --- a/lib/pages/settings_security/settings_security_view.dart +++ b/lib/pages/settings_security/settings_security_view.dart @@ -11,7 +11,7 @@ import 'settings_security.dart'; class SettingsSecurityView extends StatelessWidget { final SettingsSecurityController controller; - const SettingsSecurityView(this.controller, {Key? key}) : super(key: key); + const SettingsSecurityView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_stories/settings_stories.dart b/lib/pages/settings_stories/settings_stories.dart index 802c07d0..16e9208b 100644 --- a/lib/pages/settings_stories/settings_stories.dart +++ b/lib/pages/settings_stories/settings_stories.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/widgets/matrix.dart'; import '../../utils/matrix_sdk_extensions/client_stories_extension.dart'; class SettingsStories extends StatefulWidget { - const SettingsStories({Key? key}) : super(key: key); + const SettingsStories({super.key}); @override SettingsStoriesController createState() => SettingsStoriesController(); diff --git a/lib/pages/settings_stories/settings_stories_view.dart b/lib/pages/settings_stories/settings_stories_view.dart index 31524eef..f5d71fab 100644 --- a/lib/pages/settings_stories/settings_stories_view.dart +++ b/lib/pages/settings_stories/settings_stories_view.dart @@ -8,7 +8,7 @@ import 'package:fluffychat/widgets/avatar.dart'; class SettingsStoriesView extends StatelessWidget { final SettingsStoriesController controller; - const SettingsStoriesView(this.controller, {Key? key}) : super(key: key); + const SettingsStoriesView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/settings_style/settings_style.dart b/lib/pages/settings_style/settings_style.dart index 619dc2c6..72783989 100644 --- a/lib/pages/settings_style/settings_style.dart +++ b/lib/pages/settings_style/settings_style.dart @@ -11,7 +11,7 @@ import '../../widgets/matrix.dart'; import 'settings_style_view.dart'; class SettingsStyle extends StatefulWidget { - const SettingsStyle({Key? key}) : super(key: key); + const SettingsStyle({super.key}); @override SettingsStyleController createState() => SettingsStyleController(); diff --git a/lib/pages/settings_style/settings_style_view.dart b/lib/pages/settings_style/settings_style_view.dart index f7646fdc..9104912e 100644 --- a/lib/pages/settings_style/settings_style_view.dart +++ b/lib/pages/settings_style/settings_style_view.dart @@ -11,7 +11,7 @@ import 'settings_style.dart'; class SettingsStyleView extends StatelessWidget { final SettingsStyleController controller; - const SettingsStyleView(this.controller, {Key? key}) : super(key: key); + const SettingsStyleView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/pages/story/story_page.dart b/lib/pages/story/story_page.dart index 1fafdf0f..1a0333c2 100644 --- a/lib/pages/story/story_page.dart +++ b/lib/pages/story/story_page.dart @@ -24,7 +24,7 @@ import 'package:fluffychat/widgets/avatar.dart'; import 'package:fluffychat/widgets/matrix.dart'; class StoryPage extends StatefulWidget { - const StoryPage({Key? key}) : super(key: key); + const StoryPage({super.key}); @override StoryPageController createState() => StoryPageController(); diff --git a/lib/pages/story/story_view.dart b/lib/pages/story/story_view.dart index 03e25502..913becfb 100644 --- a/lib/pages/story/story_view.dart +++ b/lib/pages/story/story_view.dart @@ -19,7 +19,7 @@ import '../../config/themes.dart'; class StoryView extends StatelessWidget { final StoryPageController controller; - const StoryView(this.controller, {Key? key}) : super(key: key); + const StoryView(this.controller, {super.key}); static const List textShadows = [ Shadow( diff --git a/lib/pages/user_bottom_sheet/user_bottom_sheet.dart b/lib/pages/user_bottom_sheet/user_bottom_sheet.dart index 7234317a..9dbbb84d 100644 --- a/lib/pages/user_bottom_sheet/user_bottom_sheet.dart +++ b/lib/pages/user_bottom_sheet/user_bottom_sheet.dart @@ -74,14 +74,13 @@ class UserBottomSheet extends StatefulWidget { final Object? profileSearchError; const UserBottomSheet({ - Key? key, + super.key, this.user, this.profile, required this.outerContext, this.onMention, this.profileSearchError, - }) : assert(user != null || profile != null), - super(key: key); + }) : assert(user != null || profile != null); @override UserBottomSheetController createState() => UserBottomSheetController(); diff --git a/lib/pages/user_bottom_sheet/user_bottom_sheet_view.dart b/lib/pages/user_bottom_sheet/user_bottom_sheet_view.dart index 1926193d..544fc92c 100644 --- a/lib/pages/user_bottom_sheet/user_bottom_sheet_view.dart +++ b/lib/pages/user_bottom_sheet/user_bottom_sheet_view.dart @@ -11,7 +11,7 @@ import 'user_bottom_sheet.dart'; class UserBottomSheetView extends StatelessWidget { final UserBottomSheetController controller; - const UserBottomSheetView(this.controller, {Key? key}) : super(key: key); + const UserBottomSheetView(this.controller, {super.key}); @override Widget build(BuildContext context) { diff --git a/lib/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart b/lib/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart index 241ae1a6..e930f90c 100644 --- a/lib/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart +++ b/lib/utils/matrix_sdk_extensions/flutter_hive_collections_database.dart @@ -12,14 +12,10 @@ import 'package:universal_html/html.dart' as html; class FlutterHiveCollectionsDatabase extends HiveCollectionsDatabase { FlutterHiveCollectionsDatabase( - String name, - String path, { - HiveCipher? key, - }) : super( - name, - path, - key: key, - ); + super.name, + String super.path, { + super.key, + }); static const String _cipherStorageKey = 'hive_encryption_key'; diff --git a/lib/widgets/adaptive_flat_button.dart b/lib/widgets/adaptive_flat_button.dart index 7faa7eed..faed7e95 100644 --- a/lib/widgets/adaptive_flat_button.dart +++ b/lib/widgets/adaptive_flat_button.dart @@ -9,11 +9,11 @@ class AdaptiveFlatButton extends StatelessWidget { final void Function()? onPressed; const AdaptiveFlatButton({ - Key? key, + super.key, required this.label, this.textColor, this.onPressed, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/widgets/avatar.dart b/lib/widgets/avatar.dart index 7d43f8f3..be1424da 100644 --- a/lib/widgets/avatar.dart +++ b/lib/widgets/avatar.dart @@ -21,8 +21,8 @@ class Avatar extends StatelessWidget { this.onTap, this.client, this.fontSize = 18, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) { diff --git a/lib/widgets/chat_settings_popup_menu.dart b/lib/widgets/chat_settings_popup_menu.dart index bc7e929a..54a2fbf0 100644 --- a/lib/widgets/chat_settings_popup_menu.dart +++ b/lib/widgets/chat_settings_popup_menu.dart @@ -16,8 +16,7 @@ class ChatSettingsPopupMenu extends StatefulWidget { final Room room; final bool displayChatDetails; - const ChatSettingsPopupMenu(this.room, this.displayChatDetails, {Key? key}) - : super(key: key); + const ChatSettingsPopupMenu(this.room, this.displayChatDetails, {super.key}); @override ChatSettingsPopupMenuState createState() => ChatSettingsPopupMenuState(); diff --git a/lib/widgets/connection_status_header.dart b/lib/widgets/connection_status_header.dart index 7d58b000..2283c41b 100644 --- a/lib/widgets/connection_status_header.dart +++ b/lib/widgets/connection_status_header.dart @@ -10,7 +10,7 @@ import '../utils/localized_exception_extension.dart'; import 'matrix.dart'; class ConnectionStatusHeader extends StatefulWidget { - const ConnectionStatusHeader({Key? key}) : super(key: key); + const ConnectionStatusHeader({super.key}); @override ConnectionStatusHeaderState createState() => ConnectionStatusHeaderState(); diff --git a/lib/widgets/content_banner.dart b/lib/widgets/content_banner.dart index 72a89a5a..f9e6a616 100644 --- a/lib/widgets/content_banner.dart +++ b/lib/widgets/content_banner.dart @@ -21,8 +21,8 @@ class ContentBanner extends StatelessWidget { this.client, this.opacity = 0.75, this.placeholder, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) { diff --git a/lib/widgets/fluffy_chat_app.dart b/lib/widgets/fluffy_chat_app.dart index 45852dfc..708f814f 100644 --- a/lib/widgets/fluffy_chat_app.dart +++ b/lib/widgets/fluffy_chat_app.dart @@ -18,11 +18,11 @@ class FluffyChatApp extends StatelessWidget { final String? pincode; const FluffyChatApp({ - Key? key, + super.key, this.testWidget, required this.clients, this.pincode, - }) : super(key: key); + }); /// getInitialLink may rereturn the value multiple times if this view is /// opened multiple times for example if the user logs out after they logged diff --git a/lib/widgets/layouts/empty_page.dart b/lib/widgets/layouts/empty_page.dart index 9f377f65..a43f96df 100644 --- a/lib/widgets/layouts/empty_page.dart +++ b/lib/widgets/layouts/empty_page.dart @@ -5,7 +5,7 @@ import 'package:flutter/material.dart'; class EmptyPage extends StatelessWidget { final bool loading; static const double _width = 300; - const EmptyPage({this.loading = false, Key? key}) : super(key: key); + const EmptyPage({this.loading = false, super.key}); @override Widget build(BuildContext context) { final width = min(MediaQuery.of(context).size.width, EmptyPage._width) / 2; diff --git a/lib/widgets/layouts/login_scaffold.dart b/lib/widgets/layouts/login_scaffold.dart index bc9e04c2..0ad8e93d 100644 --- a/lib/widgets/layouts/login_scaffold.dart +++ b/lib/widgets/layouts/login_scaffold.dart @@ -13,11 +13,11 @@ class LoginScaffold extends StatelessWidget { final bool enforceMobileMode; const LoginScaffold({ - Key? key, + super.key, required this.body, this.appBar, this.enforceMobileMode = false, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/lib/widgets/layouts/max_width_body.dart b/lib/widgets/layouts/max_width_body.dart index 31f1e7be..a5d9cafe 100644 --- a/lib/widgets/layouts/max_width_body.dart +++ b/lib/widgets/layouts/max_width_body.dart @@ -15,8 +15,8 @@ class MaxWidthBody extends StatelessWidget { this.maxWidth = 600, this.withFrame = true, this.withScrolling = true, - Key? key, - }) : super(key: key); + super.key, + }); @override Widget build(BuildContext context) { return SafeArea( diff --git a/lib/widgets/layouts/two_column_layout.dart b/lib/widgets/layouts/two_column_layout.dart index f0fdb991..a6f4c8bd 100644 --- a/lib/widgets/layouts/two_column_layout.dart +++ b/lib/widgets/layouts/two_column_layout.dart @@ -6,11 +6,11 @@ class TwoColumnLayout extends StatelessWidget { final bool displayNavigationRail; const TwoColumnLayout({ - Key? key, + super.key, required this.mainView, required this.sideView, required this.displayNavigationRail, - }) : super(key: key); + }); @override Widget build(BuildContext context) { return ScaffoldMessenger( diff --git a/lib/widgets/log_view.dart b/lib/widgets/log_view.dart index 4c58f8b4..6e5e3188 100644 --- a/lib/widgets/log_view.dart +++ b/lib/widgets/log_view.dart @@ -4,7 +4,7 @@ import 'package:go_router/go_router.dart'; import 'package:matrix/matrix.dart'; class LogViewer extends StatefulWidget { - const LogViewer({Key? key}) : super(key: key); + const LogViewer({super.key}); @override LogViewerState createState() => LogViewerState(); diff --git a/lib/widgets/matrix.dart b/lib/widgets/matrix.dart index ab328e9b..26ad915e 100644 --- a/lib/widgets/matrix.dart +++ b/lib/widgets/matrix.dart @@ -45,8 +45,8 @@ class Matrix extends StatefulWidget { this.child, required this.clients, this.queryParameters, - Key? key, - }) : super(key: key); + super.key, + }); @override MatrixState createState() => MatrixState(); diff --git a/lib/widgets/mxc_image.dart b/lib/widgets/mxc_image.dart index beb79425..0aedd1e4 100644 --- a/lib/widgets/mxc_image.dart +++ b/lib/widgets/mxc_image.dart @@ -38,8 +38,8 @@ class MxcImage extends StatefulWidget { this.animationCurve = FluffyThemes.animationCurve, this.thumbnailMethod = ThumbnailMethod.scale, this.cacheKey, - Key? key, - }) : super(key: key); + super.key, + }); @override State createState() => _MxcImageState(); diff --git a/lib/widgets/public_room_bottom_sheet.dart b/lib/widgets/public_room_bottom_sheet.dart index 87ee5025..cfe21c5e 100644 --- a/lib/widgets/public_room_bottom_sheet.dart +++ b/lib/widgets/public_room_bottom_sheet.dart @@ -22,8 +22,8 @@ class PublicRoomBottomSheet extends StatelessWidget { required this.outerContext, this.chunk, this.onRoomJoined, - Key? key, - }) : super(key: key) { + super.key, + }) { assert(roomAlias != null || chunk != null); } diff --git a/lib/widgets/settings_switch_list_tile.dart b/lib/widgets/settings_switch_list_tile.dart index a3da2dbb..268e5f18 100644 --- a/lib/widgets/settings_switch_list_tile.dart +++ b/lib/widgets/settings_switch_list_tile.dart @@ -9,12 +9,12 @@ class SettingsSwitchListTile extends StatefulWidget { final Function(bool)? onChanged; const SettingsSwitchListTile.adaptive({ - Key? key, + super.key, this.defaultValue = false, required this.storeKey, required this.title, this.onChanged, - }) : super(key: key); + }); @override SettingsSwitchListTileState createState() => SettingsSwitchListTileState(); diff --git a/lib/widgets/theme_builder.dart b/lib/widgets/theme_builder.dart index b1ca4aa4..b35a0b44 100644 --- a/lib/widgets/theme_builder.dart +++ b/lib/widgets/theme_builder.dart @@ -19,8 +19,8 @@ class ThemeBuilder extends StatefulWidget { required this.builder, this.themeModeSettingsKey = 'theme_mode', this.primaryColorSettingsKey = 'primary_color', - Key? key, - }) : super(key: key); + super.key, + }); @override State createState() => ThemeController(); diff --git a/lib/widgets/unread_rooms_badge.dart b/lib/widgets/unread_rooms_badge.dart index 2110e4e3..a808c14f 100644 --- a/lib/widgets/unread_rooms_badge.dart +++ b/lib/widgets/unread_rooms_badge.dart @@ -11,11 +11,11 @@ class UnreadRoomsBadge extends StatelessWidget { final Widget? child; const UnreadRoomsBadge({ - Key? key, + super.key, required this.filter, this.badgePosition, this.child, - }) : super(key: key); + }); @override Widget build(BuildContext context) { diff --git a/pubspec.lock b/pubspec.lock index 225d998a..6198009e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -13,10 +13,10 @@ packages: dependency: "direct main" description: name: adaptive_dialog - sha256: "3b8abc7d1ba0834061759ee0be8e623eff5bffbcd1e6df5608a11983cfad6b2b" + sha256: "2861f072027046912caaaec9a688e50e10b712ab11ea18d266ef83c391e5f4d6" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.0+2" analyzer: dependency: transitive description: @@ -373,10 +373,10 @@ packages: dependency: "direct main" description: name: file_picker - sha256: "21145c9c268d54b1f771d8380c195d2d6f655e0567dc1ca2f9c134c02c819e0a" + sha256: "903dd4ba13eae7cef64acc480e91bf54c3ddd23b5b90b639c170f3911e489620" url: "https://pub.dev" source: hosted - version: "5.3.3" + version: "6.0.0" file_selector_linux: dependency: transitive description: @@ -543,18 +543,18 @@ packages: dependency: "direct dev" description: name: flutter_lints - sha256: "2118df84ef0c3ca93f96123a616ae8540879991b8b57af2f81b76a7ada49b2a4" + sha256: ad76540d21c066228ee3f9d1dad64a9f7e46530e8bb7c85011a88bc1fd874bc5 url: "https://pub.dev" source: hosted - version: "2.0.2" + version: "3.0.0" flutter_local_notifications: dependency: "direct main" description: name: flutter_local_notifications - sha256: "3cc40fe8c50ab8383f3e053a499f00f975636622ecdc8e20a77418ece3b1e975" + sha256: "6d11ea777496061e583623aaf31923f93a9409ef8fcaeeefdd6cd78bf4fe5bb3" url: "https://pub.dev" source: hosted - version: "15.1.0+1" + version: "16.1.0" flutter_local_notifications_linux: dependency: transitive description: @@ -636,10 +636,10 @@ packages: dependency: "direct main" description: name: flutter_secure_storage - sha256: "98352186ee7ad3639ccc77ad7924b773ff6883076ab952437d20f18a61f0a7c5" + sha256: ffdbb60130e4665d2af814a0267c481bcf522c41ae2e43caf69fa0146876d685 url: "https://pub.dev" source: hosted - version: "8.0.0" + version: "9.0.0" flutter_secure_storage_linux: dependency: transitive description: @@ -676,10 +676,10 @@ packages: dependency: transitive description: name: flutter_secure_storage_windows - sha256: fc2910ec9b28d60598216c29ea763b3a96c401f0ce1d13cdf69ccb0e5c93c3ee + sha256: "5809c66f9dd3b4b93b0a6e2e8561539405322ee767ac2f64d084e2ab5429d108" url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "3.0.0" flutter_svg: dependency: transitive description: @@ -705,18 +705,18 @@ packages: dependency: "direct main" description: name: flutter_web_auth_2 - sha256: "70e4df72940183b8e269c4163f78dd5bf9102ba3329bfe00c0f2373f30fb32d0" + sha256: "75613aa4d8e43df3de0fc3d93df36ae5b4ba2e94070384c5a9baeda99f5a235f" url: "https://pub.dev" source: hosted - version: "2.1.5" + version: "3.0.3" flutter_web_auth_2_platform_interface: dependency: transitive description: name: flutter_web_auth_2_platform_interface - sha256: f6fa7059ff3428c19cd756c02fef8eb0147131c7e64591f9060c90b5ab84f094 + sha256: "9124824cbd21e12680bf58190e27b77f251c897e80ec81cd557ec1fde9aecabf" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "3.0.0" flutter_web_plugins: dependency: transitive description: flutter @@ -803,10 +803,10 @@ packages: dependency: "direct main" description: name: go_router - sha256: "2aa884667eeda3a1c461f31e72af1f77984ab0f29450d8fb12ec1f7bc53eea14" + sha256: e156bc1b2088eb5ece9351bccd48c3e1719a4858eacbd44e59162e98a68205d1 url: "https://pub.dev" source: hosted - version: "10.1.0" + version: "12.0.1" highlighter: dependency: transitive description: @@ -1033,10 +1033,10 @@ packages: dependency: transitive description: name: lints - sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452" + sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "3.0.0" list_counter: dependency: transitive description: @@ -1281,18 +1281,18 @@ packages: dependency: "direct main" description: name: permission_handler - sha256: "63e5216aae014a72fe9579ccd027323395ce7a98271d9defa9d57320d001af81" + sha256: "284a66179cabdf942f838543e10413246f06424d960c92ba95c84439154fcac8" url: "https://pub.dev" source: hosted - version: "10.4.3" + version: "11.0.1" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: "2ffaf52a21f64ac9b35fe7369bb9533edbd4f698e5604db8645b1064ff4cf221" + sha256: f9fddd3b46109bd69ff3f9efa5006d2d309b7aec0f3c1c5637a60a2d5659e76e url: "https://pub.dev" source: hosted - version: "10.3.3" + version: "11.1.0" permission_handler_apple: dependency: transitive description: @@ -1305,10 +1305,10 @@ packages: dependency: transitive description: name: permission_handler_platform_interface - sha256: "7c6b1500385dd1d2ca61bb89e2488ca178e274a69144d26bbd65e33eae7c02a9" + sha256: "6760eb5ef34589224771010805bea6054ad28453906936f843a8cc4d3a55c4a4" url: "https://pub.dev" source: hosted - version: "3.11.3" + version: "3.12.0" permission_handler_windows: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 48c76437..e564bd01 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -8,7 +8,7 @@ environment: sdk: ">=3.0.0 <4.0.0" dependencies: - adaptive_dialog: ^1.9.0-x-macos-beta.1 + adaptive_dialog: ^1.9.0+2 animations: ^2.0.7 archive: ^3.3.9 badges: ^3.1.1 @@ -26,7 +26,7 @@ dependencies: emoji_proposal: ^0.0.1 emojis: ^0.9.9 #fcm_shared_isolate: ^0.1.0 - file_picker: ^5.3.0 + file_picker: ^6.0.0 flutter: sdk: flutter flutter_app_badger: ^1.5.0 @@ -37,7 +37,7 @@ dependencies: flutter_html: ^3.0.0-beta.2 flutter_html_table: ^3.0.0-beta.2 flutter_linkify: ^6.0.0 - flutter_local_notifications: ^15.1.0+1 + flutter_local_notifications: ^16.1.0 flutter_localizations: sdk: flutter flutter_map: ^4.0.0 @@ -45,13 +45,13 @@ dependencies: flutter_olm: ^1.2.0 flutter_openssl_crypto: ^0.1.0 flutter_ringtone_player: ^3.1.1 - flutter_secure_storage: ^8.0.0 + flutter_secure_storage: ^9.0.0 flutter_typeahead: ^4.3.2 - flutter_web_auth_2: ^2.1.1 + flutter_web_auth_2: ^3.0.3 flutter_webrtc: ^0.9.37 future_loading_dialog: ^0.2.3 geolocator: ^7.6.2 - go_router: ^10.0.0 + go_router: ^12.0.1 hive: ^2.2.3 hive_flutter: ^1.1.0 http: ^0.13.4 @@ -67,7 +67,7 @@ dependencies: package_info_plus: ^4.0.0 pasteboard: ^0.2.0 path_provider: ^2.0.9 - permission_handler: ^10.0.0 + permission_handler: ^11.0.1 provider: ^6.0.2 punycode: ^1.0.0 qr_code_scanner: ^1.0.0 @@ -92,7 +92,7 @@ dependencies: dev_dependencies: dart_code_metrics: ^5.7.5 - flutter_lints: ^2.0.1 + flutter_lints: ^3.0.0 flutter_native_splash: ^2.0.3+1 flutter_test: sdk: flutter