Add Arabic text shaping support for chat functionality

This commit introduces Arabic text shaping in the chat application by adding `ArabicShaping.cpp` and `ArabicShaping.h` for handling contextual forms and visual reordering.

The rendering logic in `ChatScreen.cpp` is updated to utilize this new functionality, adjusting cursor positions accordingly. Other UI components, including `UIControl_Base.cpp`, `UIControl_Label.cpp`, and `UIControl_SaveList.cpp`, are modified to ensure proper display of Arabic text.

Additionally, `Font.cpp` is enhanced with methods for efficient rendering of pre-shaped text.
This commit is contained in:
Revela
2026-03-17 17:08:58 -05:00
parent d473ef0dc5
commit e786604228
17 changed files with 717 additions and 28 deletions
+2
View File
@@ -2404,6 +2404,7 @@
<ClInclude Include="AnimatePacket.h" />
<ClInclude Include="AnvilTile.h" />
<ClInclude Include="AnvilTileItem.h" />
<ClInclude Include="ArabicShaping.h" />
<ClInclude Include="ArmorDyeRecipe.h" />
<ClInclude Include="ArmorItem.h" />
<ClInclude Include="ArmorRecipes.h" />
@@ -3479,6 +3480,7 @@
<ClCompile Include="AnimatePacket.cpp" />
<ClCompile Include="AnvilTile.cpp" />
<ClCompile Include="AnvilTileItem.cpp" />
<ClCompile Include="ArabicShaping.cpp" />
<ClCompile Include="ArmorDyeRecipe.cpp" />
<ClCompile Include="ArmorItem.cpp" />
<ClCompile Include="ArmorRecipes.cpp" />