457 Commits

Author SHA1 Message Date
Pāvels Nadtočajevs
19f360d65a Add font import flag to toggle modulation of colored glyphs. 2025-04-01 13:36:10 +03:00
Rémi Verschelde
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
Thaddeus Crews
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
Lukas Tenbrink
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
Lukas Tenbrink
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
Rémi Verschelde
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
Lukas Tenbrink
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
kobewi
10f6c01b9c Remove ABS in favor of Math::abs 2025-03-19 13:52:40 +01:00
Thaddeus Crews
0a30831bed Merge pull request #100023 from Repiteo/core/module-includes-header-strip
Core: Avoid including `modules/modules_enabled.gen.h` in headers
2025-03-11 19:54:48 -05:00
Thaddeus Crews
6c4f17db1a Core: Avoid including modules_enabled in headers 2025-03-11 19:42:13 -05:00
Thaddeus Crews
be429eb404 SCons: Make builders prettier, utilize constexpr 2025-03-11 18:31:20 -05:00
Thaddeus Crews
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
Thaddeus Crews
3f759f488d Merge pull request #103491 from bruvzg/hb1040
Update HarfBuzz to 10.4.0
2025-03-10 21:05:48 -05:00
A Thousand Ships
331a43a9d8 Add String::remove_char(s) methods for performance and convenience 2025-03-10 13:19:28 +01:00
Thaddeus Crews
324512e11c Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
Pāvels Nadtočajevs
ec10d38d2f Update HarfBuzz to 10.4.0 2025-03-03 07:55:00 +02:00
Frank Becker
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
Spartan322
e2d0cc2ded Merge commit godotengine/godot@ad9abe841d 2025-02-11 21:06:34 -05:00
Pāvels Nadtočajevs
316b50ba8d [TextServer] Use all available space when string is too short for ellipsis. 2025-02-10 08:24:46 +02:00
Pāvels Nadtočajevs
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
Spartan322
35e289fa5e Merge commit godotengine/godot@0b6a717ac1 2025-02-04 11:38:32 -05:00
bruvzg
f2709c7ded [TextServer] Fix line/word breaks not always updated when applying overrun. 2025-02-04 11:37:05 +02:00
Thaddeus Crews
382c760ea6 SCons: Apply new ruff/mypy fixes 2025-02-03 09:55:09 -06:00
Lukas Tenbrink
6c82cf0737 Optimize text rendering by caching UBreakIterator instances. 2025-01-29 14:03:03 +01:00
Pāvels Nadtočajevs
7f4481284e [TextServer] Fix embedded object keys in substrings. 2025-01-19 10:22:46 +02:00
Spartan322
4805bc1eee Merge commit godotengine/godot9630d4e2fc1d0fdef6f46f24e236548549f31d49 2025-01-17 16:33:06 -05:00
Pāvels Nadtočajevs
14093fdacf [TextServer] Fix ICU data incorrectly marked as loaded even if file was not found. 2025-01-17 15:46:04 +02:00
Thaddeus Crews
fd88acc671 Merge pull request #101008 from Repiteo/scons/nocache-all-text
SCons: Properly `NoCache` all text files
2025-01-16 17:17:59 -06:00
Thaddeus Crews
73278bf35d SCons: Properly NoCache all text files 2025-01-16 16:59:12 -06:00
Pāvels Nadtočajevs
43bc44e3b0 [TextServer] Fix text buffer not processing strings added after shape. 2025-01-16 08:57:27 +02:00
Spartan322
5e6a04e752 Merge commit godotengine/godot@5b52b4b5c4 2025-01-12 13:06:53 -05:00
Rémi Verschelde
85fbf7ca84 Merge pull request #101367 from akien-mga/msdfgen-1.12
msdfgen: Update to 1.12
2025-01-10 23:06:25 +01:00
Rémi Verschelde
c97c7b73e6 msdfgen: Update to 1.12 2025-01-09 22:03:43 +01:00
Rémi Verschelde
269b1dfa03 harfbuzz: Update to 10.1.0 2025-01-09 21:04:11 +01:00
Thaddeus Crews
f1f33169d9 SCons: Specify optional dependencies for modules 2025-01-08 21:59:18 -06:00
Rémi Verschelde
76c8e76560 Merge pull request #101284 from akx/tyops
A handful of typo fixes
2025-01-08 15:53:33 +01:00
Spartan322
889d027c1a Merge commit godotengine/godot@d2ada64a03 2025-01-08 07:52:51 -05:00
Aarni Koskela
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
Thaddeus Crews
a29294fddc SCons: Refactor color output implementation 2025-01-07 18:44:53 -06:00
Rémi Verschelde
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
Pāvels Nadtočajevs
3d60ce9389 [Export] Allow using ICU data from export templates instead of editor embedded data. 2025-01-07 08:15:09 +02:00
bruvzg
cc1db569e1 [TextServer] Improve embedded objects handling performance. 2025-01-07 08:01:29 +02:00
Spartan322
1609981ccf Merge commit godotengine/godot@75ce4266c4 2024-12-29 11:38:02 -05:00
Yufeng Ying
33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
Spartan322
6de65adaef Add Redot codespell documentation correction 2024-12-21 23:54:49 -05:00
Spartan322
fa0b4af786 Merge commit godotengine/godot@a7a2a12bfd 2024-12-21 05:32:01 -05:00
AThousandShips
15b4331fb1 [TextServer] Fix use of find_char in text servers
The `find_char` method is not (currently) available to extensions and
can't be used in the text servers which can be built as extensions, so
now controlled by compile option
2024-12-19 21:44:30 -05:00
Rémi Verschelde
d45825347d Merge pull request #100300 from edwin0cheng/improve_emoji
Improve emoji SVG parsing by caching
2024-12-18 17:23:28 +01:00
Edwin Cheng
61d387135f Improve emoji SVG parsing by caching
Basically, when we first encounter the document, we parse it as before, but we also note the offsets of other glyphs and store the remaining XML. The next time we see another glyph, we can simply parse that glyph node and insert it back into the stored XML.
2024-12-18 19:02:03 +08:00
Rémi Verschelde
182b4741ea Merge pull request #93479 from Repiteo/scons/better-colored-output
SCons: Improve colored output
2024-12-17 16:18:41 +01:00