emoji_picker_flutter icon indicating copy to clipboard operation
emoji_picker_flutter copied to clipboard

[Bug] GoogleFonts.noToColorEmoji performance issue

Open efalco777 opened this issue 1 year ago • 4 comments

How to reproduce:

  1. Replace initState with in main_custom_font.dart in lib/example of the project with:
@override
  void initState() {
    final fontSize = 24 * (isApple ? 1.2 : 1.0);
    // 1. Define Custom Font & Text Style
    _textStyle = DefaultEmojiTextStyle.copyWith(
      fontFamily: GoogleFonts.notoColorEmoji().fontFamily, // <---- notoColorEmoji instead of notoEmoji
      fontSize: fontSize,
    );

    // 2. Use EmojiTextEditingController
    _controller = EmojiTextEditingController(emojiTextStyle: _textStyle);
    super.initState();
  }
  1. open bottom sheet.

Expected: App runs same as with other fonts

Actual: App freezes on scroll, changing emoji tab, emoji picking etc. everythin that may update the sheet causes it to freeze up.

Issue might be related to debug asserts. This functionality is untestable on debug mode. ~~Seems to run ok on profile mode~~ nevermind it also lags, seems to be unrelated to google fonts as i've imported font manually it also simply makes the app unresponsive.

efalco777 avatar Jun 20 '24 15:06 efalco777

@efalco777 I'm sorry for the performance issues you see with the custom font. I followed the discussion on pro_image_editor thread and unfortunately, I don't have any further suggestions as the author there. I'm open for suggestions and hoping for impeller improvements soon 🙏

Fintasys avatar Jul 15 '24 14:07 Fintasys

@efalco777 Flutter just had an update to version 3.24.0 and as we can see in the post here they mention it that they now improved the impeller for better emoji rendering. I recommend you to test it, maybe this issue is resolved now.

hm21 avatar Aug 07 '24 06:08 hm21

I tested it with 3.24.0 but unfortunately the performance is still very bad on iOS. I can't recognize and improvement to previous version.

Fintasys avatar Aug 08 '24 06:08 Fintasys

Adding the controller to the emoji picker completely freezes the app as soon as i open it (web). Is it related?

JeanPSF avatar Sep 26 '24 13:09 JeanPSF