build: Update packages and flutter super.key refactoring

This commit is contained in:
krille-chan 2023-10-28 13:03:16 +02:00
commit eca4825c70
No known key found for this signature in database
129 changed files with 294 additions and 324 deletions

View file

@ -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<AddWidgetTile> createState() => AddWidgetTileState();

View file

@ -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) {

View file

@ -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();

View file

@ -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) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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)

View file

@ -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<Widget> _appBarActions(BuildContext context) {
if (controller.selectMode) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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();

View file

@ -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();

View file

@ -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<CuteContent> 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<CuteEventOverlay> 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) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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.

View file

@ -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) {

View file

@ -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) {

View file

@ -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<bool?> show(BuildContext context) => PlatformInfos.isCupertinoStyle
? showCupertinoDialog(

View file

@ -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) {

View file

@ -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) {

View file

@ -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();

View file

@ -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) {

View file

@ -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();

View file

@ -44,8 +44,8 @@ class InputBar extends StatelessWidget {
this.autofocus,
this.textInputAction,
this.readOnly = false,
Key? key,
}) : super(key: key);
super.key,
});
List<Map<String, String?>> getSuggestions(String text) {
if (controller!.selection.baseOffset !=

View file

@ -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<void> _displayPinnedEventsDialog(
BuildContext context,

View file

@ -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) {

View file

@ -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();

View file

@ -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) {

View file

@ -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,

View file

@ -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();

View file

@ -16,8 +16,8 @@ class SendLocationDialog extends StatefulWidget {
const SendLocationDialog({
required this.room,
Key? key,
}) : super(key: key);
super.key,
});
@override
SendLocationDialogState createState() => SendLocationDialogState();

View file

@ -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();

View file

@ -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) {

View file

@ -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) {