From fe673c9e23ddd292f55131911d4b616619cdc78d Mon Sep 17 00:00:00 2001 From: otsmr Date: Wed, 15 Jul 2026 19:05:15 +0200 Subject: [PATCH] update lottie --- dependencies | 2 +- .../settings/chat/chat_reactions.view.dart | 22 ++++++++++--------- pubspec.yaml | 2 +- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/dependencies b/dependencies index 72d9bd63..d99dba6a 160000 --- a/dependencies +++ b/dependencies @@ -1 +1 @@ -Subproject commit 72d9bd6320bca1f1d29c6e61c3821fed326c0abe +Subproject commit d99dba6a5e0eb13d7dcb38a842e64c23a1779f1c diff --git a/lib/src/visual/views/settings/chat/chat_reactions.view.dart b/lib/src/visual/views/settings/chat/chat_reactions.view.dart index 19707b0b..d050baa4 100644 --- a/lib/src/visual/views/settings/chat/chat_reactions.view.dart +++ b/lib/src/visual/views/settings/chat/chat_reactions.view.dart @@ -16,12 +16,16 @@ class ChatReactionSelectionView extends StatefulWidget { class _ChatReactionSelectionView extends State { List _selectedEmojis = []; + /// Cache the emoji keys list once to avoid repeated Map.keys.toList() calls. + static final List _allEmojis = EmojiAnimationComp.animatedIcons.keys + .toList(); + List _emojisFromSession() { final user = userService.currentUser; if (user.preSelectedEmojies != null) { return user.preSelectedEmojies!; } - return EmojiAnimationComp.animatedIcons.keys.toList().sublist(0, 6); + return _allEmojis.sublist(0, 6); } @override @@ -60,22 +64,20 @@ class _ChatReactionSelectionView extends State { gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( crossAxisCount: 4, ), - itemCount: EmojiAnimationComp.animatedIcons.keys.length, + itemCount: _allEmojis.length, itemBuilder: (context, index) { - final emoji = EmojiAnimationComp.animatedIcons.keys.elementAt( - index, - ); + final emoji = _allEmojis[index]; + final isSelected = _selectedEmojis.contains(emoji); return GestureDetector( onTap: () => _onEmojiSelected(emoji), child: Card( - color: _selectedEmojis.contains(emoji) + color: isSelected ? context.color.primary.withAlpha(150) : context.color.surface, child: Center( - child: SizedBox( - width: 40, - height: 40, - child: EmojiAnimationComp(emoji: emoji), + child: Text( + emoji, + style: const TextStyle(fontSize: 32), ), ), ), diff --git a/pubspec.yaml b/pubspec.yaml index 53d91f4b..8a1dfc45 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,7 +3,7 @@ description: "twonly, a privacy-friendly way to connect with friends through sec publish_to: 'none' -version: 0.4.0+154 +version: 0.4.0+155 environment: sdk: ^3.11.0