From 23907cd03bda93018d82e152f97be06b91b51b21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pa=CC=84vels=20Nadtoc=CC=8Cajevs?= <7645683+bruvzg@users.noreply.github.com> Date: Wed, 5 Nov 2025 15:15:11 +0200 Subject: [PATCH] [TextServer] Improve font fallback for emojis. --- modules/text_server_adv/text_server_adv.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/modules/text_server_adv/text_server_adv.cpp b/modules/text_server_adv/text_server_adv.cpp index 8375b36b7af..d796173de47 100644 --- a/modules/text_server_adv/text_server_adv.cpp +++ b/modules/text_server_adv/text_server_adv.cpp @@ -5644,6 +5644,15 @@ RID TextServerAdvanced::_find_sys_font_for_text(const RID &p_fdef, const String if (dvar.has(ital_tag) && dvar[ital_tag].operator int() == 1) { font_style.set_flag(TextServer::FONT_ITALIC); } + if (p_script_code == "Zsye") { +#if defined(MACOS_ENABLED) || defined(APPLE_EMBEDDED_ENABLED) + font_name = "Apple Color Emoji"; +#elif defined(WINDOWS_ENABLED) + font_name = "Segoe UI Emoji"; +#else + font_name = "Noto Color Emoji"; +#endif + } String locale = (p_language.is_empty()) ? TranslationServer::get_singleton()->get_tool_locale() : p_language; PackedStringArray fallback_font_name = OS::get_singleton()->get_system_font_path_for_text(font_name, p_text, locale, p_script_code, font_weight, font_stretch, font_style & TextServer::FONT_ITALIC);