loadEmojis method

Future<void> loadEmojis({
  1. int? rowCount,
  2. int? columnCount,
  3. List<String>? customEmojis,
})

Implementation

Future<void> loadEmojis(
    {int? rowCount, int? columnCount, List<String>? customEmojis}) async {
  if (rowCount != null) _rowCount = rowCount;
  if (columnCount != null) _columnCount = columnCount;
  try {
    final emojiString = await rootBundle
        .loadString('packages/rongcloud_im_kit/assets/emoji.plist');
    final document = XmlDocument.parse(emojiString);
    final emojis = document.findAllElements('string').map((node) {
      final value = node.innerText;
      return value;
    }).toList();
    _processEmojiPages(emojis);
    notifyListeners();
  } catch (e) {
    if (kDebugMode) {
      print('Error loading emojis: $e');
    }
    _processEmojiPages(['πŸ˜€', 'πŸ˜ƒ', 'πŸ˜„', '😁', 'πŸ˜†']);
    notifyListeners();
  }
}