Commit Graph

308 Commits

Author SHA1 Message Date
c93ce94f4a Merge pull request #104455 from Ivorforce/ubrk-clone
Optimize startup times by using `ubrk_clone` instead of `ubrk_open`.
2025-03-28 14:33:03 +01:00
a8bab92fc0 Merge pull request #104450 from Ivorforce/font-load-once
Optimize startup times by avoiding loading fonts twice.
2025-03-23 19:03:57 -05:00
09e7bef0e0 Use ubrk_clone instead of ubrk_open to create UBreakIterator instances.
`ubrk_clone` is much faster, because the locale doesn't have to be parsed again.
2025-03-22 00:42:43 +01:00
1a2cb12077 Generate an error when trying to load a font with an invalid face, instead of defaulting to the last valid font face.
This optimizes `TextServerAdvanced::_ensure_cache_for_size`, improving editor startup times.
2025-03-21 17:12:28 +01:00
21e1e43b79 Merge pull request #104430 from Ivorforce/add-features-iterate-fast
Optimize `TextServerAdvanced::_add_features` by using iteration instead of `.values()` and `.keys()`
2025-03-21 13:04:19 +01:00
bfc1ef4ab7 Optimize TextServerAdvanced::_add_features by using iteration instead of .values() and .keys().
Rename `_add_featuers` to `_add_features`.
2025-03-21 11:59:29 +01:00
10f6c01b9c Remove ABS in favor of Math::abs 2025-03-19 13:52:40 +01:00
90509e6402 Merge pull request #102129 from Ivorforce/optimize-text-server-adv-break-iter
Optimize text rendering by caching `UBreakIterator` instances.
2025-03-11 16:53:56 -05:00
70a8421c30 Apply fix_alpha_edges for both theme icons and font glyphs.
Only apply fix_alpha_edges for SVG glyphs.
Allow modulate for svg glyphs.
2025-02-18 13:10:28 -08:00
316b50ba8d [TextServer] Use all available space when string is too short for ellipsis. 2025-02-10 08:24:46 +02:00
b50d9742c2 Fix is_valid_float, Variant parser, Expression parser, script highlighter, and TextServer not handing capital E in scientific notation. 2025-02-05 18:39:40 +02:00
f2709c7ded [TextServer] Fix line/word breaks not always updated when applying overrun. 2025-02-04 11:37:05 +02:00
6c82cf0737 Optimize text rendering by caching UBreakIterator instances. 2025-01-29 14:03:03 +01:00
7f4481284e [TextServer] Fix embedded object keys in substrings. 2025-01-19 10:22:46 +02:00
14093fdacf [TextServer] Fix ICU data incorrectly marked as loaded even if file was not found. 2025-01-17 15:46:04 +02:00
43bc44e3b0 [TextServer] Fix text buffer not processing strings added after shape. 2025-01-16 08:57:27 +02:00
c97c7b73e6 msdfgen: Update to 1.12 2025-01-09 22:03:43 +01:00
f134769506 Fix various typos
* Add TODO notes for typos that should be fixed for 5.0

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-08 14:47:42 +02:00
6e9be55ee2 Merge pull request #100104 from bruvzg/ts_data_in_template
[Export] Allow using ICU data from export templates instead of editor embedded data.
2025-01-07 10:14:34 +01:00
3d60ce9389 [Export] Allow using ICU data from export templates instead of editor embedded data. 2025-01-07 08:15:09 +02:00
cc1db569e1 [TextServer] Improve embedded objects handling performance. 2025-01-07 08:01:29 +02:00
33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
26e7b6bdd6 Merge pull request #99164 from bruvzg/int_files
[Export] Write text server data from memory, instead of using temporary file.
2024-12-03 14:40:58 -06:00
c5ca56f40b [Export] Write text server data from memory, instead of using temporary file. 2024-12-02 18:22:55 +02:00
fa264115ce Merge pull request #98664 from bruvzg/ts_reset_subpixel_shift
[TextServer] Reset subpixel shift on blank glyphs.
2024-12-02 17:20:07 +01:00
d58b2e879f Get rid of easily removable uses of const_cast 2024-12-01 17:50:13 -08:00
4daa336d92 [TextServer] Only load ellipsis glyph when it's used. 2024-11-05 11:04:48 +02:00
e81a2afbc4 [TextServer] Reset subpixel shift on blank glyphs and import option to enable/disable it. 2024-11-01 10:18:57 +02:00
24b4607309 Merge pull request #97693 from bruvzg/ts_fb_silent
[TextServer] Silently skip invalid system fallback fonts.
2024-10-01 17:33:38 +02:00
d222daa9c8 [TextServer] Silently skip invalid system fallback fonts. 2024-10-01 17:22:16 +03:00
c4b7d6f5c3 Fix ICU support data loading
This fixes an error in loading the ICU support data on platforms that
don't use either the builtin icu4c or the static ICU support data.
2024-09-30 09:03:15 -07:00
13a90e938f Merge pull request #70096 from rune-scape/stringname-dict
StringName Dictionary keys
2024-09-03 17:38:06 +02:00
154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
4ba7738a1f TextServerAdvanced: improve performance by removing redundant lookups
+ caching editor setting
+ using a faster hash method on the FontForSizeAdvanced cache
+ SafeFlag for ShapedTextDataAdvanced::valid
2024-08-28 13:01:11 -07:00
f01e052162 Merge pull request #95549 from timothyqiu/split-translation-server
Split `TranslationServer` into its own file
2024-08-16 14:36:16 +02:00
7343dc3a5d Split TranslationServer into its own file 2024-08-15 15:00:47 +08:00
32bc1c2f33 [Font Import] Detect pixel fonts and disable subpixel positioning. 2024-07-23 20:34:39 +03:00
e03fb3043f fix: change esthetic -> aesthetic 2024-07-05 16:03:01 -04:00
b5e3238109 [TextServer] Fix get_word_breaks and it uses. 2024-06-21 14:56:57 +03:00
dc8d7ef43e [TextServer] Save advances rounding remainders to prevent rounding error accumulation. 2024-06-18 09:04:51 +03:00
e651421905 [TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API. 2024-06-12 19:30:19 +03:00
25fe3d4b46 Merge pull request #81639 from MJacred/is_letter
Add `is_valid_letter()` to `TextServer`
2024-05-03 01:21:34 +02:00
717513a62d Add is_valid_letter() to TextServer 2024-05-02 21:32:20 +02:00
1f8387f8fd [TextServer] Improve empty glyph handling to allow glyphs smaller than 2px and avoid unnecessary texture updates. 2024-04-07 18:19:45 +03:00
9bcda8f94c Prefer family name in fonts' names table 2024-04-06 16:08:59 +08:00
27f6f4147b [TextServer] Expose ICU title case string conversion to scripting. 2024-04-04 10:56:49 +03:00
f6a532d501 [Font] Apply oversampling to the "embolden" strength. 2024-03-19 08:50:01 +02:00
48b650c254 Merge pull request #89422 from Repiteo/clang-tidy-NULL
clang-tidy: Enforce `modernize-use-nullptr`
2024-03-13 18:41:39 +01:00
0478998148 Merge pull request #89414 from bruvzg/update_icu_msdfgen
Update ICU and msdfgen.
2024-03-13 18:41:35 +01:00
0d02568ff8 Update ICU and msdfgen. 2024-03-13 09:12:50 +02:00