@@ -132,7 +132,8 @@ class _FlyerChatReactionsRowState extends State<FlyerChatReactionsRow> {
132132
133133 @override
134134 Widget build (BuildContext context) {
135- if (widget.reactions.isEmpty) {
135+ final validReactions = widget.reactions.where ((r) => r.count > 0 ).toList ();
136+ if (validReactions.isEmpty) {
136137 return const SizedBox .shrink ();
137138 }
138139 final theme = context.read <ChatTheme >();
@@ -165,14 +166,14 @@ class _FlyerChatReactionsRowState extends State<FlyerChatReactionsRow> {
165166
166167 final stackWidth = constraints.maxWidth;
167168 var maxCapacity = calculateSizesAndMaxCapacity (
168- reactions: widget.reactions ,
169+ reactions: validReactions ,
169170 stackWidth: stackWidth,
170171 emojiTextStyle: emojiTextStyle,
171172 countTextStyle: countTextStyle,
172173 extraTextStyle: extraTextStyle,
173174 );
174175 var visibleItemsCount = reactionsSizes.length;
175- var hiddenCount = widget.reactions .length - maxCapacity;
176+ var hiddenCount = validReactions .length - maxCapacity;
176177 final souldDisplaySurplus = hiddenCount > 0 ;
177178
178179 Size ? surplusWidgetSize;
@@ -184,37 +185,37 @@ class _FlyerChatReactionsRowState extends State<FlyerChatReactionsRow> {
184185 extraText: '+$hiddenCount ' ,
185186 );
186187 maxCapacity = calculateSizesAndMaxCapacity (
187- reactions: widget.reactions ,
188+ reactions: validReactions ,
188189 stackWidth: stackWidth - surplusWidgetSize.width - widget.spacing,
189190 emojiTextStyle: emojiTextStyle,
190191 countTextStyle: countTextStyle,
191192 extraTextStyle: extraTextStyle,
192193 );
193194
194195 visibleItemsCount = reactionsSizes.length;
195- hiddenCount = widget.reactions .length - visibleItemsCount;
196+ hiddenCount = validReactions .length - visibleItemsCount;
196197 }
197198
198199 final children = < Widget > [];
199200
200201 for (var i = 0 ; i < visibleItemsCount; i++ ) {
201202 children.add (
202203 ReactionTile (
203- key: ValueKey (widget.reactions [i].emoji),
204+ key: ValueKey (validReactions [i].emoji),
204205 width: reactionsSizes[i].width,
205- emoji: widget.reactions [i].emoji,
206- count: widget.reactions [i].count,
206+ emoji: validReactions [i].emoji,
207+ count: validReactions [i].count,
207208 countTextStyle: countTextStyle,
208209 emojiTextStyle: emojiTextStyle,
209210 borderColor: theme.reactionBorderColor,
210211 backgroundColor: backgroundColor,
211212 reactedBackgroundColor: reactedBackgroundColor,
212- reactedByUser: widget.reactions [i].isReactedByUser,
213+ reactedByUser: validReactions [i].isReactedByUser,
213214 onTap: () {
214- widget.onReactionTap? .call (widget.reactions [i].emoji);
215+ widget.onReactionTap? .call (validReactions [i].emoji);
215216 },
216217 onLongPress: () {
217- widget.onReactionLongPress? .call (widget.reactions [i].emoji);
218+ widget.onReactionLongPress? .call (validReactions [i].emoji);
218219 },
219220 removeOrAddLocallyOnTap: widget.removeOrAddLocallyOnTap,
220221 ),
0 commit comments