@@ -3,7 +3,6 @@ import 'package:flutter/material.dart';
33import '../api/model/model.dart' ;
44import '../model/avatar_url.dart' ;
55import '../model/binding.dart' ;
6- import '../model/emoji.dart' ;
76import '../model/presence.dart' ;
87import 'content.dart' ;
98import 'emoji.dart' ;
@@ -349,32 +348,28 @@ class UserStatusEmoji extends StatelessWidget {
349348 final store = PerAccountStoreWidget .of (context);
350349 final effectiveEmoji = emoji ?? store.getUserStatus (userId! ).emoji;
351350
352- final placeholder = SizedBox .square (dimension: size);
353351 if (effectiveEmoji == null ) return SizedBox .shrink ();
354352
355353 final emojiDisplay = store.emojiDisplayFor (
356354 emojiType: effectiveEmoji.reactionType,
357355 emojiCode: effectiveEmoji.emojiCode,
358356 emojiName: effectiveEmoji.emojiName)
359- // Web doesn't seem to respect the emojiset user settings for user status .
357+ // The user-status feature doesn't support a :text_emoji:-style display .
360358 // .resolve(store.userSettings)
361359 ;
362360
363361 return Padding (
364362 padding: padding,
365- child: switch (emojiDisplay) {
366- UnicodeEmojiDisplay () => UnicodeEmojiWidget (size: size, emojiDisplay: emojiDisplay),
367- ImageEmojiDisplay () => ImageEmojiWidget (
368- size: size,
369- emojiDisplay: emojiDisplay,
370- neverAnimate: neverAnimate,
371- // If image emoji fails to load, show nothing.
372- errorBuilder: (_, _, _) => placeholder),
373- // The user-status feature doesn't support a :text_emoji:-style display.
374- // Also, if an image emoji's URL string doesn't parse, it'll fall back to
375- // a :text_emoji:-style display. We show nothing for this case.
376- TextEmojiDisplay () => placeholder,
377- });
363+ child: EmojiWidget (
364+ emojiDisplay: emojiDisplay,
365+ squareDimension: size,
366+ neverAnimateImage: neverAnimate,
367+ buildCustomTextEmoji: () =>
368+ // Invoked when an image emoji's URL didn't parse; see
369+ // EmojiStore.emojiDisplayFor. Don't show text, just an empty square.
370+ // TODO(design) refine?; offer a visible touch target with tooltip?
371+ SizedBox .square (dimension: size),
372+ ));
378373 }
379374}
380375
0 commit comments