Commit graph

2094 commits

Author SHA1 Message Date
Leon Styhre 14c4e00bf2 Changed Font::shapeText() to pass the segments vector by reference 2024-08-04 11:31:03 +02:00
Leon Styhre 5d653a9e93 Reverted a change in TextComponent as it caused unforeseen issues 2024-08-03 21:20:28 +02:00
Leon Styhre 2e01613e41 Removed the offensive wrapText hacks and added some optimizations
Also changed the three dots to an actual ellipsis Unicode character when abbreviating text
2024-08-03 20:50:59 +02:00
Leon Styhre c873441851 Made accurate text layout work correctly using HarfBuzz 2024-08-03 19:04:45 +02:00
Leon Styhre 7a8bd97226 Added a precaution to prevent crashes in case of broken fonts being used 2024-08-03 14:54:49 +02:00
Leon Styhre 75b93794b0 Fixed another failure mode for the wrapText shaped text hack 2024-08-03 14:22:36 +02:00
Leon Styhre 4931ea9749 Changed to having HarfBuzz set the horizontal glyph advance 2024-08-03 14:09:51 +02:00
Leon Styhre 908788da25 Fixed an issue where text was not correctly centered after line breaks 2024-08-03 00:18:41 +02:00
Leon Styhre c87d2e7584 RTL text segments are now flagged as such 2024-08-02 23:36:06 +02:00
Leon Styhre 09d16e9c16 Text shaping segments are no longer created by space characters 2024-08-02 23:34:44 +02:00
Leon Styhre b3ac8b6320 Changed the text shaping function to return the segment vector 2024-08-02 23:31:47 +02:00
Leon Styhre 9e7b02291b Added a hack to make shaped text wrap somehow correctly 2024-08-02 15:58:26 +02:00
Leon Styhre 45091547b7 Changed two font calculation functions to use shaped text
Also consolidated the HarfBuzz segment creation and shaping into a single function
2024-08-02 12:43:26 +02:00
Leon Styhre b1adbc0f2a Added support for the pl_PL locale 2024-08-01 21:36:45 +02:00
Leon Styhre 81bc30cc26 Fixed a text shaping issue when there was a font change for the last character of a string 2024-08-01 14:36:29 +02:00
Leon Styhre 84e850a507 Moved the text shaping to a separate function 2024-08-01 14:34:34 +02:00
Leon Styhre 412e74738a Moved the HarfBuzz segment building to a separate function
Also implemented segment caching and fixed an issue where missing glyphs were not handled correctly
2024-08-01 12:20:39 +02:00
Leon Styhre 82f6686cbf Changed the font VRAM usage calculation to actually only include texture data 2024-08-01 10:58:15 +02:00
Leon Styhre 539cdd8146 Added initial text shaping support 2024-07-31 18:44:26 +02:00
Leon Styhre f9d5b2b12e Added support for the nl_NL locale 2024-07-30 18:18:04 +02:00
Leon Styhre 4c1b5fde3c Reorganized some per-language menu title font size entries 2024-07-29 11:25:38 +02:00
Leon Styhre 192035e16a Clarified the custom event script sorting in a code comment 2024-07-28 16:21:44 +02:00
Leon Styhre 9703531273 Added a code comment regarding Unicode case mapping entries for the Latin Extended-B Unicode block 2024-07-26 21:16:27 +02:00
Leon Styhre 3b5d5a7da4 Added a StringUtil function to return the string length in Unicode characters 2024-07-26 21:09:51 +02:00
Leon Styhre 0d41632352 Added a menu title font size adjustment for the Japanese translations 2024-07-25 13:13:00 +02:00
Leon Styhre 9300f00b94 Added case conversion support for the Latin Extended-B Unicode block 2024-07-24 19:02:30 +02:00
Leon Styhre 0cf89ea875 Changed some per-language menu title font sizes 2024-07-24 11:57:24 +02:00
Leon Styhre 076709b239 Moved the Ubuntu Condensed font higher in the loading order 2024-07-24 11:47:12 +02:00
Leon Styhre f4d1534bab Added gettext context support 2024-07-23 18:17:44 +02:00
Leon Styhre a1e31331b5 Added support for the ro_RO locale 2024-07-23 10:34:12 +02:00
Leon Styhre 39e0a1773b Added support for the ru_RU locale 2024-07-22 16:12:04 +02:00
Leon Styhre d86923fb98 Added menu title per-language font sizing to the entire application 2024-07-22 11:25:25 +02:00
Leon Styhre 298b371715 Added support for the es_ES locale 2024-07-21 11:50:06 +02:00
Leon Styhre 1f605347c3 Added support for the el_GR locale 2024-07-21 11:37:53 +02:00
Leon Styhre afea0eace9 Added support for the fr_FR locale 2024-07-21 11:13:49 +02:00
Leon Styhre 0582856b84 Fixed an issue where formatting translation strings could lead to crashes on some platforms 2024-07-20 22:17:44 +02:00
Leon Styhre 2dc805bcbd (Linux) Added workaround for a library or OS bug that prevented some locales from working correctly 2024-07-20 16:50:44 +02:00
Leon Styhre f1ee285b3e Added support for the pt_BR locale 2024-07-20 13:42:51 +02:00
Leon Styhre 335b3dd4ff Added support for the ja_JP locale 2024-07-20 13:35:37 +02:00
Leon Styhre 01406c27c3 Added support for the it_IT locale 2024-07-20 13:31:21 +02:00
Leon Styhre 0b5b0e0572 Added support for the en_GB locale 2024-07-20 13:24:37 +02:00
Leon Styhre 72ee58e748 Added localization support to parts of the application 2024-07-18 15:07:41 +02:00
Leon Styhre 13fadd1658 Removed some obsolete code from DateTimeEditComponent 2024-07-17 16:49:51 +02:00
Leon Styhre 35f51e6904 Added localization support to parts of the application 2024-07-17 14:14:59 +02:00
Leon Styhre 5bea1dfb8b Reverted the change where StringUtil::toCapitalized() would capitalize characters follow apostrophes 2024-07-16 21:27:29 +02:00
Leon Styhre b067481f3f tringUtil::toCapitalized() will now capitalize characters following apostrophes and quotation marks 2024-07-16 21:25:08 +02:00
Leon Styhre 7ea52c13a5 StringUtil::toCapitalized() will now capitalize characters following the ( and [ characters 2024-07-16 21:19:49 +02:00
Leon Styhre cac5ec0402 Fixed an issue where the StringUtil::toCapitalized() function didn't correctly capitalize multi-byte Unicode characters
Also modernized some code
2024-07-16 21:13:50 +02:00
Leon Styhre f7be57336b (Windows) Fixed some MSVC compiler warnings 2024-07-16 16:58:55 +02:00
Leon Styhre 062288ad07 Added localization support to parts of the application 2024-07-16 16:50:46 +02:00